我想在我的EntityBase
类中做类似的事情:
public EntityBase()
{
CreatedDate = DateTime.Now;
ModifiedDate = DateTime.Now;
foreach (var property in this.GetType().GetProperties())
{
if (property is IList)
property.SetValue(property, new IList());
}
}
确保我的所有实体中都没有null
列表
但是,这不适用于
if (property is IList<object>)
if (property is IList<T>)
因为在情况1中,该属性被跳过(因为它是类型IList<Package>
而不是object
),并且在情况2中,我无法访问目录中的T
当前上下文
是否可能发生这种情况,还是只需要手动分配每个实体的构造函数中的所有IList
属性?
答案 0 :(得分:0)
继续这样一个事实,您的目标是“确保我的任何实体中都没有空列表”
为什么不只在具有列表的每个实体的构造函数中实例化列表。在问题中使用foreach方法会很慢,而且也不是很干净。