簡體   English   中英

實體框架主鍵約定。 如何允許更多列名中帶有“ id”的列?

[英]Entity Framework primary key convention. How to allow more columns with 'id' in their name?

我正在現有數據庫上開發Web應用程序,很遺憾,我無法更改。 我得到這個錯誤

“使用不區分大小寫的搜索時,為屬性'Id'找到了多個屬性映射。”

經過一番搜索后,我發現問題在於EF中有一些約定,更具體地講(根據我在此處的閱讀內容)指出:

如果字段名稱包含ID后綴(不區分大小寫),則EF會自動將其作為主鍵

該表已經有一個主鍵(名為“ id”)。 有沒有一種方法可以禁用EF約定或以其他任何方式允許除我的“ id”字段外,還有一個名為“ something_id”的字段而不會出現此錯誤?

這是如何禁用EF的id約定:

在OnModelCreating內部

            modelBuilder.Conventions.Remove<IdKeyDiscoveryConvention>(); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM