实体框架采用类名而不是datanotation属性[表(" table_name")]

时间:2014-05-12 15:30:05

标签: c# sql linq entity-framework

由于某些我甚至无法理解的原因,EF将类名作为表而不是Table attribute

示例:

   [Table("t_person")]
   class Person{

   [Column("person_id"),Key]
   public int Id {get;set;}

   [Column("person_name"),StringLength(20)]
   public int Name {get;set;}    

    }

进行where查询时的SQL变为:

//simply version
SELECT * FROM person // wf%, shuld be t_person not person :/

如果我override OnModelCreation to set ToTable property并设置表格表,那么我会收到此错误:

Invalid column name 'Id'.
Invalid column name 'Name'.

现在是属性'没有重新合并的属性。

解决方案?

0 个答案:

没有答案