我要代表傳奇項聯賽中我的應用程序(後來我想的方式在這裏顯示出來:自我關係的實體框架
http://lol.gameguyz.com/sites/default/files/Item%20Shop_Recommended%20Items_FollowUp%20(1).jpg
右側, 即作爲一個樹結構)。請注意,每個項目可能包含用於構建它的項目列表。
我已經實現了應用程序的第一個版本,現在我正在將數據移動到數據庫。我想了解一下實體框架。首先使用代碼,我宣佈我的課:
public class Item
{
public ItemID ID { get; set; }
public int Cost { get; set; }
public string Name { get; set; }
public string Path { get; set; }
public List<ItemID> Recipe { get; set; }
public Item() { }
public Item(ItemID id, int cost, string name,
string path, List<ItemID> recipe)
{
ID = id;
Cost = cost;
Name = name;
Path = path;
Recipe = recipe;
}
}
但在目前的形狀它不包含有關在所有的配方信息(即所產生的分貝只有4列 - ID,成本,名稱和路徑。 因爲這是一個0 ... n的關係,所以在傳統的SQL數據庫中,我需要創建一個新的表格,其中包含對SuperiorItem-ItemUsedToBuild。有沒有更好的方法使用EF?