【发布时间】:2011-12-07 19:23:34
【问题描述】:
我发现了我的助手的一个属性,我认为它可以让我访问我的模型的属性,但我希望获得模型本身的一个实例。我有一个强类型模型的视图。模型的一个属性是其他模型的集合(TestModel)。我想以标准方式呈现集合中的每个项目。所以,我的视图代码看起来像这样。
@foreach(var testModel in @Model.Items){
@Html.DisplayViewerFor(@testModel)
}
我的助手看起来像这样。
public static MvcHtmlString DisplayViewerFor(this HtmlHelper<TestModel> helper, Expression<Func<TestModel>> expression, bool rightAligned = true) {
var modelData = helper.ViewData;
var prop = modelData[""];
var outterDiv = new TagBuilder("div");
outterDiv.AddCssClass(rightAligned ? "item-display-right" : "item-display");
//Create other markup using modelData here
//Would prefer to use an instance of TestModel
return new MvcHtmlString(outterDiv.ToString(TagRenderMode.EndTag));
}
【问题讨论】:
标签: asp.net-mvc-3