参见英文答案 Where to convert business model to view model?2个 我有一个表名“Product”和另一个表名“category”. 产品表有’productID’,’productName’和’CategoryID’. 类别表有’categoryID’和’categ
我有一个表名“Product”和另一个表名“category”.
产品表有’productID’,’productName’和’CategoryID’.
类别表有’categoryID’和’categoryName’.
我的目标是显示带有类别的产品列表.该列表将包含“产品ID”,“产品名称”和“类别名称”.
我创建了一个viewmodel.代码是
public int prodID{get;set;} public int prodName{get;set;} public int catName{get;set;}
在我的控制器中,我有:
var query= from p in dc.Product select new {p.ProductID,p.ProductName,p.Category1.CategoryName }; var prod = new ProductIndexViewModel() { ProductList=query //this line is problematic !!it says an explicit conversion exists.... }; return View(prod);
我如何编写我的控制器代码,以便它与viewmodel匹配?
也许你会直接使用你的视图模型类:var query = from p in dc.Product select new ProductIndexViewModel() { prodID = p.ProductID, prodName = p.ProductName, catName = p.Category1.CategoryName }; List<ProductIndexViewModel> productForView = query.ToList();