在MVC中'#include文件'的正确方法是什么?

7wp*_*7wp 5 asp.net-mvc

我想做这样的事情:

<!--#include file="../stuff/foo/box.aspx"-->
Run Code Online (Sandbox Code Playgroud)

但是在ASP.Net MVC应用程序中执行此操作只会感觉不对.有没有更好的方法在ASP.Net MVC项目中实现相同的功能?

Dar*_*rov 14

<%: Html.Partial("~/Views/foo/box.ascx") %>
Run Code Online (Sandbox Code Playgroud)

要么:

<% Html.RenderPartial("~/Views/foo/box.ascx"); %>
Run Code Online (Sandbox Code Playgroud)

或者其中最好的都使用编辑器模板(如果此部分包含用于编辑视图模型属性的输入):

<%: Html.EditorFor(x => x.MyModelProperty) %>
Run Code Online (Sandbox Code Playgroud)

或显示模板(如果此部分仅包含视图模型属性的显示):

<%: Html.DisplayFor(x => x.MyModelProperty) %>
Run Code Online (Sandbox Code Playgroud)

和他们的剃刀等价

@Html.Partial("~/Views/foo/box.ascx")
@{Html.RenderPartial("~/Views/foo/box.ascx");}
@Html.EditorFor(x => x.MyModelProperty)
@Html.DisplayFor(x => x.MyModelProperty)
Run Code Online (Sandbox Code Playgroud)