我正在做EF和我的第一個項目,我打算去代碼優先模型。我試圖找到一些有關處理相當經典的「查找表」場景的指導。在EF代碼查找表的最佳實踐 - 首先
我正在處理一個漂亮的規範情況,我將堅持地址數據。所以,我有一個簡單的地址DTO ...
public class Address
{
public int Id { get; set; }
public virtual string StreetAddress1 { get; set; }
public virtual string StreetAddress2 { get; set; }
public virtual string City { get; set; }
public virtual string State { get; set; }
public virtual string ZipCode { get; set; }
}
在國家財產,我想存儲標準的美國雙字母國家代碼。出於驗證目的,我希望在生成的Address表和一個相當標準的狀態查找表之間有一個標準的一對多外鍵關係。該表可能包含一個ID,雙字母代碼和第三列以包含完整的狀態名稱。
我希望使用這種狀態查找表來填充和狀態下拉式樣框等,也充當地址實體中提交的州的驗證。相當普遍的東西。所以,我有幾個簡單的問題(我希望)。
- 我需要建立代表國家的實體正好 有EF創建表的實體,或者我可以只包括在DBCreation策略表創建 過程和種子它呢?
- 會是有意義的創建實體,只爲用「視圖 典範」,我想顯示「狀態選取器」
- 我真的只想要存儲的兩個字母的國家代碼的任何地方在地址 實體,但這是否有意義,或者它是否更有意義,只要 使它成爲一個狀態實體的導航屬性,然後顯示?
我在這裏闡述了我的觀點,我掙扎了一下,所以如果我不清楚,請隨時索要更多的細節。
在此先感謝。 在UI中適當嗎?
3-我個人使用的實體只是因爲它可以避免用戶的印刷錯誤。如果你在許多實體中使用它(現在或以後),我也保證一致性。但是,如果你的應用程序相當小或者你不需要太多的驗證,我沒有看到太多的反指示,直接將這兩個字母直接放在Address實體中。 – Mathieu 2012-04-06 14:53:43