The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

在 Entity Framework 設計工具中的自動版面配置技巧

利用 Visual Studio 2010 的 Entity Framework 設計工具從資料庫產生模型後通常會先自動排版,不過每一個產生的模型(Entity)預設寬度都是固定的,導致一些表格名稱太長的項目都顯示不完整 (如下圖示),而 Entity Framework 設計工具似乎還沒有聰明到可以依照我的意思自動排版,但我今天研究出一個新方法可以幫我解決此問題。

我的解決方案就是先用 XML (文字) 編輯器 開啟此 EDMX 檔案:

該 EDMX 檔案最下面一段有個 EF Designer 專屬的定義區,在 <Diagrams> 下可以看到很多 <EntityTypeShape> 的標籤,其中有個 Width 屬性就是用來定義每個模型的寬度用的,你可以用全部取代的方式批次將所有模型的寬度調大到適當的大小,例如改成: Width="2.2"

改完後關閉此檔並重新開啟,這時你就會看到名稱不會被截掉了,但是模型與模型之間會重疊:

我們在 Entity Framework 設計工具中其實是有自動排版功能的,只是不會自動調整模型的寬度而已,最後我們在空白處按右鍵選取 [圖表] > [配置圖表] 即可自動排版完成:

如此一來圖表就好看多了!