2011-05-10 69 views
2

愚蠢的问题:我们如何指定EF 4.1 RTM辨别器列的值?我有这个:EF代码第一次最终版本中的辨别器列

modelBuilder.Entity<Entity>() 
      .Map<Individual>(m => m.Requires(ind => ind.EntityKind).HasValue(1)) 
      .Map<Company>(m => m.Requires(c => c.EntityKind).HasValue(2)); 

它遵循我找到的关于它的链接。但是,HasValue现在看起来没有任何参数。对此有何帮助? btw,我可以在哪里找到关于EF代码的完整且正确的文档?

谢谢。

+0

Ado.Net团队博客:http://blogs.msdn.com/b/adonet/ – hazimdikenli 2011-05-10 11:46:56

回答

5
modelBuilder.Entity<Entity>() 
      .Map<Individual>(m => m.Requires("EntityKind").HasValue("1")) 
      .Map<Company>(m => m.Requires("EntityKind").HasValue("2")); 
+0

谢谢。顺便说一下,这有什么想法?两个重载完全不同的东西?我知道CLR级别的重载允许,但在C#中?真???哦,以及...再次感谢 – 2011-05-10 12:01:39

+0

顺便说一句,看起来像类名迷失在复制和粘贴。您也可以使用.HasValue (1),如果“EntityKind”属性类型不是字符串,那么字符串版本可能不起作用。 – hazimdikenli 2011-05-10 12:12:51

+0

没问题...我认为添加泛型类型参数会是多余的,所以它应该是一样的:) – 2011-05-11 08:28:07