gpt4 book ai didi

c# - 如何将 List 转换为 List

转载 作者:太空宇宙 更新时间:2023-11-03 18:56:13 24 4
gpt4 key购买 nike

在我的 MVC应用程序有 4 个模型类。

ProductModel.cs

public class ProductModel  
{
public int ProductID { get; set; }
public string ProductName { get; set; }
public int SupplierID { get; set; }
public int CategoryID { get; set; }
}

分类模型.cs

public class CategoriesModel  
{
public int CategoryID { get; set; }
public string CategoryName { get; set; }
public string Description { get; set; }
}

SuppliersModel.cs

public class SuppliersModel  
{
public int SupplierID { get; set; }
public string CompanyName { get; set; }
public string ContactName { get; set; }
public string ContactTitle { get; set; }
public string Phone { get; set; }
public string City { get; set; }
public string Country { get; set; }
}

Products_Categories_SuppliersModel - 具有上述三个类的所有必需属性的类。

public class Products_Categories_SuppliersModel  
{
public string ProductName { get; set; }
public string ContactName { get; set; }
public string ContactTitle { get; set; }
public string CompanyName { get; set; }
public string Phone { get; set; }
public string City { get; set; }
public string Country { get; set; }
public string CategoryName { get; set; }
public string Description { get; set; }
}

我在 List<ProductModel> 中有数据, List<CategoriesModel> , List<SuppliersModel> .二手Linq加入所有三个列表。

 public List<Products_Categories_SuppliersModel> GetProduct_Category_SupplierData()  
{
try
{
List<ProductModel> prodData = GetProductsData().ToList();
List<CategoriesModel> categData = GetCategoriesData().ToList();
List<SuppliersModel> supplData = GetSuppliersData();
var DBData = (from p in prodData
join c in categData
on p.CategoryID equals c.CategoryID
join s in supplData on p.SupplierID equals s.SupplierID
select new
{
p.ProductName,
c.CategoryName,
c.Description,
s.ContactName,
s.ContactTitle,
s.CompanyName,
s.Phone,
s.City,
s.Country
});
return DBData.ToList();
}
catch (Exception) { return null; }
finally {}
}

但是第 24 行抛出错误:

 Cannot implicitly convert type
'System.Collections.Generic.List<AnonymousType#1>' to
'System.Collections.Generic.List<MVCApp.Models.Products_Categories_SuppliersModel>'.

上面的代码有什么错误?我创建了 Products_Categories_SuppliersModel返回数据应为 Products_Categories_SuppliersModel 的类类型。

最佳答案

像这样写你的选择语句

select new  MVCApp.Models.Products_Categories_SuppliersModel
{
ProductName = p.ProductName,
CategoryName = c.CategoryName,
Description = c.Description,
ContactName = s.ContactName,
ContactTitle = s.ContactTitle,
CompanyName = s.CompanyName,
Phone = s.Phone,
City = s.City,
Country = s.Country };

关于c# - 如何将 List<AnonymousType#1> 转换为 List<Model>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44743522/

24 4 0