2012-02-28 67 views
3

例如我有網站與沉重的佈局(masterpage)。 而對於佈局渲染,我們需要從數據庫中獲取一些東西,也許做一些計算。哪裏是最好的地方爲asp.net mvc佈局邏輯

但是,我必須把這個代碼?

  1. 把代碼放在每個視圖(可能通過渲染部分)是壞主意。
  2. 佈局剃鬚刀的標記也是。標記用於可視化邏輯,但不用於業務邏輯。

回答

4

The Haacked博客有關Html.RenderAction助手(也被視爲兒童動作),它看起來非常適合您的情況。它允許您在站點中嵌入部分/小部件,這些部分/小部件通過獨立的Controller/Model/View生命週期。在您的佈局中包含常用小部件時非常有用,而不需要讓主控制器擔心這種橫向邏輯。

0

您應該將該邏輯放在子操作中並在佈局中調用它們。

+0

在每一個動作?但是我想只用這個代碼放置。 – Neir0 2012-02-28 22:47:53

+0

@ Neir0:不需要。爲每個邏輯創建一個子動作,並在佈局中的正確位置調用它們。 – SLaks 2012-02-28 22:48:39