2011-02-12 72 views
1

G'day all。帶「代碼隱藏」部分視圖的最佳做法

我還是這個MVC的新東西,並試圖讓我的頭一些設計基礎知識。

我有一個'控制'(舊的Web表單行話?),我想在多個頁面上使用。這是一個標準的登錄框,即用戶名,密碼等提交按鈕和特定的代碼。

我已將此作爲局部視圖創建。這在使用它的頁面/視圖中都呈現得很好,但是我的問題是當提交表單(在部分視圖中)時,放置代碼的最佳位置在哪裏?

是否在兩個'完整'視圖中創建HTTPPost屬性,然後調用另一個具有與局部視圖相關的代碼的'通用函數'類?理想情況下,我想我想要一個「SharedController」或者具有類似這種事情的動作方法的東西,然而,隨着應用程序的增長,這似乎會失去控制。

我希望這一切都有道理。在此先感謝,

ž

回答

3

一般來說,如果你想使用的局部視圖(的RenderPartial)當你想打出來的主視圖的某些部分,說你渲染一個複雜的類型這是主要的模型。

對於你想要的東西,我認爲使用RenderAction是最好的選擇。你會創建一個單獨的登錄控制器,並且你的局部視圖將被綁定到這個控制器。基本上你的登錄控制是一個獨立的功能單元,託管視圖不需要任何有關的知識。

RenderAction將爲LogonController分別完成整個控制器生命週期,並且您的表單將回發給該控制器。