【发布时间】:2010-09-12 13:50:36
【问题描述】:
考虑这个例子:
namespace ValueObjects
{
public class User
{
public string UserCode { get; set; }
public string UserName { get; set; }
}
public class Company
{
public string CompanyCode { get; set; }
}
}
现在,我希望 User 类具有 CompanyCode 属性.. 第一个明显的解决方案 只是简单地将 CompanyCode 属性放在 User 类上
public class User
{
public string UserCode { get; set; }
public string UserName { get; set; }
public string CompanyCode { get; set; }
}
现在这里的问题是冗余,因为公司类已经有一个属性 CompanyCode,有没有什么方法可以让用户只使用公司的 CompanyCode 属性而不继承公司类(这里的问题是 C# 不允许多重继承类)或使用 ICompany 接口(但接口在值对象中很痛苦)。 我正在考虑将 Company 类包含到 User 类中,但我将只使用它的属性 CompanyCode。
类似的东西..
public class User
{
public string UserCode { get; set; }
public string UserName { get; set; }
private Company company;
public string CompanyCode { get { company.CompanyCode } set {company.CompanyCode }
}
但是,只是添加一个字符串属性 CompanyCode.. 并没有什么区别。 需要你们的建议。提前谢谢..
【问题讨论】:
标签: c# value-objects data-transfer-objects