2012-02-28 69 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