在Asp.Net MVC3项目中工作,使用剃须刀引擎,我发现了一种我不知道如何处理的情况。 在一种观点中,我有以下情况:
@foreach (var item in Model.Items) {
Html.RenderAction("ActionName", new {param = item});
}
我认为这是一种非常典型的情况。
现在让我们说渲染的html部分需要一些javascript文件才能正常工作,而且也需要css。而且我也希望这个动作的partialView也可以在其他视图中使用一次或多次。
问题是:哪里是引用外部js和css的最佳位置?我会在PartialView中说...但是我可以避免调用n次RenderAction,不会在页面上放置n次相同的脚本声明吗? 而且,说重复js和css的问题解决了,我应该如何将这个外部资源与视图绑定?通常在我的视图中,我将外部资源放在专用部分中,出于性能原因,布局页面将在页面底部呈现。我应该对partialView做同样的事情,假设调用它的视图可以访问 scripts部分吗?但是通过这种方式,我将可重用的partialView的设计绑定到托管视图结构:如果是这样,我不应该在托管视图中声明脚本和css吗?
我对MVC很陌生,我想知道你用哪种方法来解决这个设计问题。
答案 0 :(得分:0)
我通常会尝试弄清楚我是需要几页还是一页的css或js文件。例如,我在layout.cshtml中包含jquery文件,只是为了确保项目中的每个视图,与主css文件相同。然后te文件,我只需要特定的视图我只包括在主视图中的那些,当然所有部分到该视图也将具有它。如果您在partial中放置一个引用并多次调用它,您将有多个引用。你可以把你的引用放在foreach循环的正上方,所有的部分都可以访问它。