我有一个使用强类型模型的局部视图。是否可以在html帮助器方法中将我的模型映射到我的局部视图并返回渲染的html?
这是伪代码,我想知道它是否可能。
public static MvcHtmlString ContentRating(this HtmlHelper html, ContentKey contentKey)
{
ContentRatingModel contentRatingModel = new ContentRatingHelper().GetContentRatingModel(contentKey);
// map my partial view which is named "ContentRating.cshtml" to contentRatingModel
return new MvcHtmlString(string.Format("the html output of mapping");
}
在我的视图中使用此辅助方法如下:
@Html.ContentRating(ContentKey.Test)
答案 0 :(得分:2)
将部分视图映射到模型的确切含义并不十分清楚,但如果要在帮助程序中呈现此部分视图的内容,则可以执行以下操作:
public static MvcHtmlString ContentRating(this HtmlHelper html, ContentKey contentKey)
{
ContentRatingModel contentRatingModel = new ContentRatingHelper().GetContentRatingModel(contentKey);
var result = html.Partial("ContentRating", contentRatingModel);
return new MvcHtmlString(result.ToHtmlString());
}
不要忘记将System.Web.Mvc.Html
命名空间放在范围内,以便可以在自定义帮助程序中解析部分扩展方法:
using System.Web.Mvc.Html;