繁体   English   中英

如何使用this.Html.DisplayFor渲染poco对象的强类型部分

[英]How to use this.Html.DisplayFor to render a strongly-typed partial for poco object

在views / home / index.aspx中:

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

index.aspx是HomeViewModel.cs的强类型,其在此处具有上面使用的属性:

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

在views / home / displaytemplates / addform.ascx中:

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

当我运行它时,什么都没有显示。 我知道我可以这样一种方式:为要绑定的局部视图创建一个单独的视图模型,然后仅将局部视图命名为AddLinkViewModel.ascx,然后它应该可以工作,但是这太多了代码,而且太长了filename;)我需要使用UIHint吗? 希望不会,因为那感觉有点黑。 谢谢!

尝试命名部分视图/home/displaytemplates/link.ascx

看起来您忘记了标记开头的=,因此仅在不将其写入流中的情况下解析了显示模板。

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

尝试改用Html.DisplayForModel

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM