实体中的自定义ICollection列表设置器,用于代码优先

时间:2014-03-22 01:05:33

标签: c# asp.net-mvc entity-framework ef-model-first

我正在使用EF6,我想将我的集合的初始化移动到Entity本身,所以代码可以写一次,教程不会这样做,只是想知道它是否正常?我还不了解实体框架下的实体框架还知道这是否正常。

例如:

        [NotMapped]
    private List<MySuggestion> _mySelections;

public virtual ICollection<MySuggestion> mySuggestions {
        get 
        {
            if (_mySelections == null)
            {
                _mySelections = new List<MySuggestion>();
            }

            return _mySelections;
        }
        set;
    }

另一种方法是按照控制器/存储库的要求对列表进行初始化,例如:

if (thing.mySuggestions == null){
   thing.mySuggestions = new List<Suggestion> ();
}

1 个答案:

答案 0 :(得分:1)

这应该可以正常工作。您需要为设置者指定一个主体...

set
{
    _mySelections = value;
}