难道EF6.x只会将public的实体类映射到数据库?

一般我们在开发过程中,都是将POCO实体类中属性设置为public。那么如果我们想要设置为非public,会映射到数据库吗?答案是不可以的。默认情况下EF6.x Code First 仅仅只映射实体中的公有属性,如果我们想映射实体中的所有非公有属性,那么就需要在OnModelCreating 方法中手动配置映射非公有属性。

modelBuilder.Types().Configure(d =>
                {
                    var nonPublicProperties = d.ClrType.GetProperties(BindingFlags.NonPublic | BindingFlags.Instance);
                    foreach (var nonPublicProperty in nonPublicProperties)
                    {
                        d.Property(nonPublicProperty).HasColumnName(nonPublicProperty.Name);
                    }
                });
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 小编费力收集:给你想要的面试集合 1.C++或Java中的异常处理机制的简单原理和应用。 当JAVA程序违反了JA...
    八爷君阅读 10,191评论 1 114
  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 11,157评论 0 4
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,803评论 1 32
  • 目录 第 1 天 第 2 天 第 3 天 第 4 天 第 5 天 第 6 天 第 7 天 0. 前言 我们假定你在...
    OneAPM阅读 5,586评论 0 10
  • 我是高二生,成绩还不错,因为是文科每天上课需要记的东西比较多,我自己能保持成绩在上游的原因之一大概就是比较会做笔记...
    上官文商阅读 13,975评论 0 2