EFCore中實體映射以及Mapper字段處理


       EFCore中,數據庫表與實體屬性進行映射時,有些字段不需要數據庫存儲,但實體需要屬性展示,通常用EF字段的NotMapper屬性進行裝飾(有的版本未實現此功能),或者在OnModelCreating進行Ignore設置。

      屬性裝飾時,若是實體基類中共有的屬性,可在基類進行統一設置;但若基類是繼承自其他類庫,則不方便進行統一設置,如繼承自Volo.Abp的聚合根AggregateRoot,要設置其中一個字段不映射,以及某些表某幾個公共字段不需映射;OnModelCreating中Ignore設置需要做很多重復的工作。

       類庫NetCore.EFModel.ConfigBuilder,對某一個實體,可進行數據庫表名配置,忽略的屬性設置,支持屬性裝飾,多個屬性同時設置;也可在DbContext中OnModelCreating方法統一設置多個忽略屬性。nguet下載包zxsn.NetCore.EFModel.ConfigBuilder(目前1.0.1版本)。使用方法如下:

     1、實體Mapper。可設置表名TableMapper,主鍵以及不映射的字段,同時可對單個字段進行屬性設置DbNoMapper

            

 

2、DbContext中OnModelCreating方法通過程序集的進行統一配置。

    ModelCreating方法設置參數:程序集屬性,需要統一配置忽略的屬性。

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM