如何在实体框架中使用类似于字段的类
本文关键字:类似于 字段 实体 框架 | 更新日期: 2023-09-27 17:57:04
有没有办法使用类在实体框架中存储一个简单的值。
我想创建一个类来存储一个简单的int32
值并将其命名为 ID
。
并简单地在实体框架中使用它,但我希望将内部int32
值保存在数据库中,而不是创建另一个表来存储 ID 类并在这两个表之间创建关系(ID 和 ID 本身的用户)。
让我用代码解释一下:
public class ID
{
public int InnerID { get; set; }
}
public class SomeClassName
{
public ID id { get; set; }
public int Age { get; set; }
//....
}
我希望结果是这样的:
-------------------
| InnerID | Age |
-------------------
| val1 | val1 |
InnerID
创建为字段,而不是对 ID 表的引用。
这可能吗?
多谢。
当然,您可以使用 EF 执行此操作。这些类型在 EF 中称为复杂类型。但重要的是,复杂类型没有实体键,EF 将知道将其映射到与"host"类(例如 SomeClassName)相同的表中的字段。以下是 MSDN 文档中关于 E 中的复杂类型:http://msdn.microsoft.com/en-us/library/vstudio/bb738472(v=vs.100).aspx
或者,对于此特定方案,您可能希望将"ID"类设置为基类(抽象),然后 SomeClassName 可以从中驱动。我已经把它的名字改成了身份。ID让我感到困惑。
public abstract class Identity {
public int InnerID { get; set; }
}
public class SomeClassName:Identity {
public int Age { get; set; }
//....
}