【问题标题】:Entity Framework 4.1 Code First: How is the Discriminator determined?Entity Framework 4.1 Code First:判别器是如何确定的?
【发布时间】:2011-10-05 17:57:16
【问题描述】:

目前,我使用 Code First 方法定义了类层次结构,如下所示。

E.F.已自动生成一个 nvarchar(128) 鉴别器。不是关键字段。

Entity Framework 如何确定鉴别器字段应该是什么和什么类型,它是否总是相同的,即 nvarchar?鉴别器是否可以在所有外部数据库访问,即从 LINQ 到实体?

【问题讨论】:

    标签: entity-framework entity-framework-4.1


    【解决方案1】:

    Discriminator 列默认为 nvarchar,因为它存储类的名称以在类型之间有所不同 - 这就是本列的重点:让 EF 知道它应该从继承层次结构中创建哪个类实例,当它从数据库。

    linq-to-entities 无法访问鉴别器列。它仅用于将记录映射到正确的类型。

    【讨论】:

    • 那么我们可以通过简单地获取实体实例的 Type 的 Name 属性来确定鉴别器列的值吗?
    猜你喜欢
    • 2023-04-02
    • 2012-05-15
    • 2011-08-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-19
    • 2011-12-11
    • 1970-01-01
    • 2012-05-10
    相关资源
    最近更新 更多