1

我已經使用EF Codefirst(在MVC4應用程序中)構建了一個數據庫。使用實體框架遷移更改約束名稱

我已經瞭解到,將訪問此數據庫的外部工具對列&約束具有名稱長度限制。

  1. 列名必須< = 20個字符
  2. 約束名稱MUSE是< = 10個字符

我爲此需要改變所產生的DB約束的名稱。 (我的專欄名稱均未超出限制。)

我可以在不破壞的情況下實現這一目標嗎?
遷移框架提供了我需要的工具嗎?

回答

0

據我所知,實體框架代碼首先不在其EntityTypeConfiguration中使用約束名稱。您應該能夠將約束重新命名爲任何您喜歡的內容,並只使用實體的屬性來提及關係。這是配置通常的樣子。

// Relationships 
      this.HasRequired(t => t.Project) 
       .WithMany(t => t.ProjectInstances) 
       .HasForeignKey(d => d.ProjectId); 

實體框架團隊中有這樣一個方便的小工具,叫做Entity Framework Power Tools。你可以通過使用它來生成代碼的第一個實體和映射。您可以在某個測試項目中使用該工具並查看生成的代碼。我敢肯定,即使您重新命名約束條件,只要您正確給出屬性,也不會有任何問題。