我已經導入了一個數據庫,該數據庫與Subdata具有一對多關係的集合MainData,生成的代碼看起來像這樣;使用linq從兩個不同的模型中填充數據模型
public DbSet<MainData> MainDatas{ get; set; }
public partial class MainData
{
public string NameOfMainData{ get; set; }
public virtual ICollection<SubData> SubDataSet{ get; set; }
}
SubData只是有一些非複雜的數據類型,如字符串和整數。
我可以將數據導入視圖,所以我知道那部分工作。我想合併到一個模型,以便我有「NameOfMainData和一個SubData的集合在同一模型中爲視圖中的簡單acsess,但我沒有得到它的工作,這是我的嘗試;
Model ;
public class DataIWantInAList
{
public IList<DataIWant> DataList { get; set; }
}
public class DataIWant
{
public string NameOfMainData{ get; set; }
public IEnumerable<SubData> SubDataSet{ get; set; }
}
在我以爲我可以添加項目在DataList控件,但我沒能在互聯網上找到任何東西,或做出來了我自己......控制器與此;
var DataToView= from p in db.MainData
select new DataIWant()
{
NameOfMainData= p.NameOfMainData,
SubDataSet= p.SubDataSet
};
return View(DataToView);
不要工作,因爲我不太喜歡LINQ,但感覺這很容易,這讓我感到非常沮喪,當我沒有得到它的工作。
任何輸入appriciated。
你特別想知道如何用Linq做到這一點,所以這本身並不是一個答案,但你有沒有考慮過使用AutoMapper(http://automapper.org/)?使這種事情變得更容易。 –