2
可重复使用的内容部分我有HTML以下块显示的东西,比如评论:创建在MVC
<div class="comment">
...
</div>
而这个HTML块使用注释对象来显示数据。
我正在使用剃刀。
如何创建这个部分,所以我可以在我的其他视图页面重新使用它,通过传递在评论对象。
这是局部视图吗?
可重复使用的内容部分我有HTML以下块显示的东西,比如评论:创建在MVC
<div class="comment">
...
</div>
而这个HTML块使用注释对象来显示数据。
我正在使用剃刀。
如何创建这个部分,所以我可以在我的其他视图页面重新使用它,通过传递在评论对象。
这是局部视图吗?
这是局部视图吗?
是的,这看起来像一个很好的候选人的局部视图(~/Views/Shared/_Comment.cshtml
):
@model CommentViewModel
<div class="comment">
...
</div>
,然后当你需要的地方使用它:
@model SomeViewModel
...
@Html.Partial("_Comment", Model.Comment)
另一种可能性是使用显示模板(~/Views/Shared/DisplayTemplates/CommentViewModel.cshtml
):
@model CommentViewModel
<div class="comment">
...
</div>
,然后当你需要的地方使用它:
@model SomeViewModel
...
@Html.DisplayFor(x => x.Comment) // the Comment property is of type CommentViewModel
,但另一种可能是使用Html.Action and Html.RenderAction帮手。
因此,您可以看到ASP.NET MVC提供了创建可重用部件的不同方式。
vs.net似乎不以下划线前缀创建部分剃刀页面时? – Blankman
Underscore是Razor防止直接加载html页面的惯例。用下划线不能直接到达。 –