entity-framework-4code-firstentity-framework-ctp5

Can I access the discriminator value in TPH mapping with Entity Framework 4 CTP5


Using Entity Framework 4 CTP5 Code First and this example

Is it possible to access the discriminator value?

I would like to use it in a projection like

context.BillingDetails.Select(x => new { Number = x.Number, DiscrimitatorValue = /* how do I get the discriminator value? */ });

From this post I understand the discriminator cannot be mapped to a property but is there any other way of accessing it?


Solution

  • After further information from Morteza Manavi in the comments of his post the simple answer is no

    you should be aware that the discriminator column is used internally by Code First and you cannnot read/write its values from an inheritance mapping standpoint.

    To access the discriminator I would have to execute a SqlQuery against the database or change my mapping strategy.