还没有发现任何关于如何做到这一点。我需要运行一些代码来更新我的Razor Layout中的数据。ASP.NET MVC 3,Razor Layout Controller-like?
我可以通过运行在正在使用的布局和设置ViewBag数据的每项行动的代码做到这一点,但似乎行不通...
那么,如何将我以更好的方式做到这一点?
还没有发现任何关于如何做到这一点。我需要运行一些代码来更新我的Razor Layout中的数据。ASP.NET MVC 3,Razor Layout Controller-like?
我可以通过运行在正在使用的布局和设置ViewBag数据的每项行动的代码做到这一点,但似乎行不通...
那么,如何将我以更好的方式做到这一点?
The answer to this question,建议使用a global action filter。
这是一段在每个动作上执行的代码(过滤器),您可以使用它来设置ViewBag中的属性。这些属性可以从每个视图和布局访问。
如果您在布局中呈现的数据与实际视图的数据(应该是这样的,或者您正在使用的布局应该使用部分视图)正交,那么我会使用概念上最好的方法将采用儿童行动(即使用Html.Action)将数据呈现到布局中。