1

我有两个班级,并且有一对多的关系,如下所示

public class User
{
    public string Name{get;set;}
    public IList<Address> Addresses{get;set}
}

public class Address
{
   public string StreetAddress{get;set;}
   public User User{get;set;}
}

要向用户添加地址,我需要在 User 构造函数中启动 Addresses 属性为

public User()
{
   this.Addresses=new List<Address>();

}

这种情况是使用 DI 启动列表的好人选,还是我应该在构造函数中启动地址列表,如图所示。

4

2 回答 2

0

如果需要地址数据本身来构造 User 的实例,它可能是 DI 的候选者。但是,如果只是确保列表被实例化,那么您的代码是正确的。

于 2014-11-19T16:19:43.440 回答
0

在这种情况下,依赖注入将是矫枉过正。依赖注入通常用于初始化复杂的服务网络。在这里,您正在处理映射到您正在转换为代码的世界的数据对象网络:因此,用户和地址之间的组合就足够了,您必须在构造函数中初始化集合。

于 2019-12-11T09:31:04.327 回答