我有一个基本模型的DLL,首先使用代码EF 4.3。 我想要的是使用其他字段扩展该dll中的某些模型。
例如在BaseModel.DLL
中namespace BaseModel
{
public class Account
{
public Id { get;set;}
public string Name {get;set;}
}
}
在引用项目中我想扩展Account模型(和DB表):
public class Account : BaseModel.Account
{
public string SomeAdditionalInfo { get;set;}
}
我希望最终得到一个包含字段的帐户
Id
Name
SomeAdditionalInfo
这样我可以继续在几个类似的项目中重用BaseModel(和逻辑)。 我想我不能使用部分类,因为我们说的是不同的DLL。 也许遗产?我尝试了几种方法,但我一直在争论有两个同名的模型。
任何提示?提示?溶液
答案 0 :(得分:1)
您可以通过Table per Hierarchy使用继承。 您可以创建基类AccountBase和子类Account:AccountBase:
public class AccountBase
{
public Id { get;set;}
public string Name {get;set;}
}
public class Account : AccountBase
{
public string SomeAdditionalInfo { get;set;}
}
它生成表AccountBase,它将包含列Id,Name,SomeAdditionalInfo 还将有列Discriminator,它将包含该行中包含的类的实例。