簡體   English   中英

實體框架代碼首先使用兩個類的連接返回列表

[英]entity Framework code first approach returning list with join of two classes

public List<CarModel> getModel()
{
     var carm = from CarModels in carDBContext.CarModel
                join
                CarCompanies in carDBContext.CarCompany on CarModels.CompanyID equals CarCompanies.CompanyID
                    select new
                    {
                         modelID = CarModels.ModelID,
                         modelName = CarModels.ModelName,
                         companyID = CarModels.CompanyID,
                         comanyName = CarCompanies.CompanyName
                    }.ToString().ToList();
       return carm.ToList();
}

這是我的代碼片段。 我正在使用實體框架代碼的第一種方法。 並希望通過與其他類(表)進行連接來返回列表。

我得到編譯tile錯誤

錯誤6無法將類型'System.Collections.Generic.List>'隱式轉換為'System.Collections.Generic.List'D:\\ Prajakta Projects \\ CarOiling \\ CarOiling \\ Models \\ CarRepository.cs 102 19 CarOiling

如果您的CarModel具有CarCompany導航屬性(應該如此),則可以顯着簡化操作:

public List<CarModel> getModels()
{
    var models = carDBContext.CarModel.Select(c => new {
                     c.ModelID
                     c.ModelName
                     c.CompanyID
                     c.CarCompany.CompanyName
                }).ToList();
   return models;
}

請參閱https://visualstudiomagazine.com/articles/2011/10/01/to-think-in-linq.aspxhttps://coding.abel.nu/2012/06/dont-use-linqs-join-navigate /

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM