Asp.net mvc 3 向局部视图发送参数
我是.NET开发新手,需要一些帮助 我需要根据评级显示星星。此显示将出现在我的大多数页面的代码中 所以,我认为最好的处理方法是使用局部视图 经过一些研究,我发现了一些东西,可以让我将这个参数发送到局部视图 例如,通过这样调用局部视图Asp.net mvc 3 向局部视图发送参数,asp.net-mvc-3,razor,Asp.net Mvc 3,Razor,我是.NET开发新手,需要一些帮助 我需要根据评级显示星星。此显示将出现在我的大多数页面的代码中 所以,我认为最好的处理方法是使用局部视图 经过一些研究,我发现了一些东西,可以让我将这个参数发送到局部视图 例如,通过这样调用局部视图 @Html.Partial("~/Views/Search/_SearchPartial.vbhtml", model.contact.rating) 但是,我不知道如何在局部视图中捕捉这个参数。此外,上下文永远不会相同。有时候,我必须展示的星星来自另一个等级。
@Html.Partial("~/Views/Search/_SearchPartial.vbhtml", model.contact.rating)
但是,我不知道如何在局部视图中捕捉这个参数。此外,上下文永远不会相同。有时候,我必须展示的星星来自另一个等级。它会改变什么吗?当您将评级传递给局部视图时,您可以通过局部视图中的
模型对象访问它
<div>
<p>Current rating: @Model</p>
<div>
电流额定值:@型号
为了让视图知道它正在处理的模型的类型,您需要在局部视图的顶部指定类型:
@model MyNamespace.MovieRating
<div>
<p>Current rating: @Model</p>
<div>
@model MyNamespace.MovieRating
电流额定值:@型号
所有这些都假设评级对象始终为同一类型。如果有不同的分级对象,则需要将其解析为单个类型,或为每种分级对象类型创建一个视图。分级值将是局部视图的模型对象(整数或双精度),像在普通视图中一样使用它。对于这种情况,使用编辑器模板或显示模板更有效。用于使用模板
创建以下文件夹:
视图/共享/显示模板
在DisplayTemplates文件夹中创建视图。调用它Rating.cshtml
并粘贴该代码:
@model int
<div><p>Current rating: @Model</p></div>
@DisplayFor(Model>=Model.Contact.rating,“rating”),它表示'>='n'est pas défini pour les types'mvcapapplication4.contactdetels'et'Integer'。ps:我在VB.NET中开发最后,我这样称呼它:@Html.Partial(“~/Views/Search/\u SearchPartial.vbhtml”,model.contact.rating),并且在使用模型时没有任何问题。太多了!
@Html.DisplayFor(model=>model.contact.rating, "Rating")