none
EF6里的实体属性已经使用了[NotMapped],但是生成的SQL语句还是会包括该属性 RRS feed

  • 问题

  • [NotMapped]
    [DataMember]
            [Required(ErrorMessageResourceName="Appointment_Date_Err_Message",ErrorMessageResourceType=typeof(Resource.ModelResource))]
            public DateTime? Date
            {
                get;
                set;
            }

    我发现如果只有[Required],sql语句就不包括Date这个属性了,这个是bug?

    2014年9月19日 1:22

答案

  • 我用的是MSSQL2008,我的解决办法是加上

    protected override void OnModelCreating(DbModelBuilder modelBuilder)        {            modelBuilder.Entity<Appointment>().Ignore(c => c.Date);        }

    是不是和wcf的某些特性有冲突

    2014年9月22日 7:22
  • [NotMapped, ScaffoldColumn(false)]

    这样写就可以了

    • 已标记为答案 dna_xp 2019年4月19日 9:29
    2015年8月1日 16:41

全部回复

  • Hell,

    >>我发现如果只有[Required]sql语句就不包括Date这个属性了,这个是bug?

    楼主你用的是什么数据库?在SQLServer2012里测试了你给的property,能够等到正确的结果。这里也有一篇相关的文章描述了这几个attributes是有效的:

    http://msdn.microsoft.com/en-us/data/jj591583.aspx

    如果楼主用其他数据库,我建议你去他们专门的数据库论坛问这个问题。

    Regards.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2014年9月22日 6:57
    版主
  • 我用的是MSSQL2008,我的解决办法是加上

    protected override void OnModelCreating(DbModelBuilder modelBuilder)        {            modelBuilder.Entity<Appointment>().Ignore(c => c.Date);        }

    是不是和wcf的某些特性有冲突

    2014年9月22日 7:22
  • Hello,

    >>是不是和wcf的某些特性有冲突

    这是有可能的,因为WCF项目的里NotMapppend attribute是有自己的作用的。你可以建一个控制台应用程序试下,我建得就是一个控制台应用程序,应用这个attribute是没有问题的。

    一般情况下建议用流畅API来配置实体之间的关系,就是你所用的方式,这样不会和其他项目类型冲突,也比较直观。

    Rgeards.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2014年9月22日 7:28
    版主
  • [NotMapped, ScaffoldColumn(false)]

    这样写就可以了

    • 已标记为答案 dna_xp 2019年4月19日 9:29
    2015年8月1日 16:41