Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Razor 未呈现空列表的编辑器模板_Razor_Asp.net Mvc 4 - Fatal编程技术网

Razor 未呈现空列表的编辑器模板

Razor 未呈现空列表的编辑器模板,razor,asp.net-mvc-4,Razor,Asp.net Mvc 4,我的EditorTemplates文件夹中有一个自定义编辑器,用于IList。编辑器具有以下模型: @model IList<PersonRelation> 避免空引用异常 问题是,当列表不为null且没有元素时,编辑器根本不显示 在我的编辑器中,我迭代元素,但也在循环外呈现另一个控件,我看不到任何元素 我遗漏了什么?解决了。 当我更改属性时,我忘了用[UIHint(“PersonRelations”)] 属性的原始形式(我的自定义编辑器的文件名为“PersonRelations.

我的EditorTemplates文件夹中有一个自定义编辑器,用于
IList
。编辑器具有以下模型:

@model IList<PersonRelation>
避免空引用异常

问题是,当列表不为null且没有元素时,编辑器根本不显示

在我的编辑器中,我迭代元素,但也在循环外呈现另一个控件,我看不到任何元素

我遗漏了什么?

解决了。 当我更改属性时,我忘了用
[UIHint(“PersonRelations”)]

属性的原始形式(我的自定义编辑器的文件名为“PersonRelations.cshtml”)

这是必需的,因为引擎似乎无法推断集合的编辑器,即使您有一个编辑器,所以您必须明确地告诉您要使用哪个编辑器

public IList<PersonRelation> Relations { get; set; }
 <div class="editor-field">
      @Html.EditorFor(model => model.Relations)
 </div>
    private IList<PersonRelation> _relations;
    public IList<PersonRelation> Relations
    {
        get { return _relations ?? (_relations = new List<PersonRelation>()); }
        set { _relations = value; }
    }