2009-07-09 104 views
1

我從數據庫創建一個.dbml文件。我的「財產」表具有「縣」表和「propertysource」表的外鍵。dbml實體關係問題

當生成代碼時,Property.Source被定義爲PropertySource類型,但Property.County被定義爲int,而不是County類型。

恐怕我沒有使用LINQ to SQL的經驗來了解這裏發生了什麼,或者爲什麼會這樣或者如何解決它。我找不到任何可能導致此問題的模式。我如何獲得自動生成的代碼來識別Property對象的County屬性是縣級類型?

回答

1

當您打開dbml設計器時,請確保您有一個圖表顯示來自Property類的兩個箭頭:一個箭頭指向County類,另一個箭頭指向PropertySource類。另外,你的設計師也應該有這三類。

如果您沒有看到對象模型,那麼數據庫模式設置的方式可能有問題。

我會檢查以確保您的外鍵正確設置。

+0

該圖看起來正確;箭頭在正確的地方。所有三個實體都在設計者中。外鍵正確設置。 – 2009-07-09 17:40:37

2

當您單擊DBML文件中的屬性時,可以使用屬性窗口修改它的類型。在「屬性」窗口中,有一個Type字段。您可以從下拉列表中選擇一些標準類型,或使用其全名輸入您自己的自定義類型,即。 「MyProject.Location.Country.CountryType」等。

確保在您嘗試在IntelliSense中訪問此項目之前重建您的項目。希望這可以幫助!