C# 当属性为空时,具有嵌套属性的EditorFor
我有一个C# 当属性为空时,具有嵌套属性的EditorFor,c#,asp.net-mvc,mvc-editor-templates,C#,Asp.net Mvc,Mvc Editor Templates,我有一个PersonVm,它有一个嵌套的Street2视图模型。在我的个人视图中,我有一个基于PersonType属性的Street2自定义编辑器模板,但是当Street2属性为空时,它会返回未格式化的文本框,而不是没有模板。如果Street2属性为空,是否有办法告诉MVC框架不要尝试呈现模板。现在我正在视图中执行IF语句。(这是一个过于简单的例子)。谢谢 个人视图模型 public class PersonVm { public string PersonType { get; set
PersonVm
,它有一个嵌套的Street2
视图模型。在我的个人视图中,我有一个基于PersonType
属性的Street2
自定义编辑器模板,但是当Street2
属性为空时,它会返回未格式化的文本框,而不是没有模板。如果Street2
属性为空,是否有办法告诉MVC框架不要尝试呈现模板。现在我正在视图中执行IF
语句。(这是一个过于简单的例子)。谢谢
个人视图模型
public class PersonVm
{
public string PersonType { get; set; }
public Street2 Street2 { get; set; }
}
个人视图
@model App.Models.PersonVm
@*... other controls *@
@* Right Now i am doing this if logic*@
@if(Model.Street2 != null)
{
@Html.EditorFor(model => model.Street2, person.PersonType)
}
我不太明白。如果
Street2
没有设置值,为什么要隐藏Street2
的编辑器。首先,您将如何在其中获取值?我们有预期的个人记录,如果我们有原始记录,他们只能编辑Street2
。这有用吗?