2010-10-11 69 views
0

在意见的/ home /的Index.aspx:如何使用this.Html.DisplayFor呈现一个强类型的部分为POCO对象

<% this.Html.DisplayFor(m => m.NewLink); %> 

的Index.aspx是强类型到HomeViewModel.cs,其中有使用上述这里的属性:

public Link NewLink { get; private set; } 
(in constructor), this.NewLink = new Link(); 

在意见的/ home/displaytemplates/addform.ascx:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<urlme.Model.Link>" %> 
this should show up on index.aspx 

当我运行它,nothi ng显示出来。我知道我可以采取这种方式,为部分绑定创建单独的视图模型,然后仅命名部分视图AddLinkViewModel.ascx,然后它应该可以工作,但这是太多的代码,太长了文件名;)我需要使用UIHint?希望不会,因为这感觉hack-ish。谢谢!

回答

0

您似乎忘记了=在标签的开始,因此显示模板被解析的只是没有被写入流。

<%=this.Html.DisplayFor(m => m.NewLink); %>

0

尝试命名的局部视图/家庭/ displaytemplates/link.ascx

+0

没有工作:寿 – 2010-10-11 15:29:22

0

尝试Html.DisplayForModel代替

<%= Html.DisplayForModel("addform", Model.NewLink) %> 
+0

谢谢/谢谢了,但是,尽量避免硬编码字符串... – 2010-10-12 21:27:46

相关问题