我想在连接结果中返回多个列并填写视图模型(VMFoodFoodMeal
)。
例如,我想通过Join结果填充VMFoodFoodMeal
感谢
IEnumerable<VMFoodFoodMeal> _fmt = (from e in db.FoodProgramMealFood
join j in db.Foods on e.FoodId equals j.Id
select new
{
Id = e.Id,
Name = j.Name,
});
答案 0 :(得分:0)
很难理解你想要什么,但作为例子,你可以在群组加入部分查看here。
以下是一个示例代码:
public void Linq103()
{
string[] categories = new string[]{
"Beverages",
"Condiments",
"Vegetables",
"Dairy Products",
"Seafood" };
List<Product> products = GetProductList();
var q =
from c in categories
join p in products on c equals p.Category into ps
select new { Category = c, Products = ps };
foreach (var v in q)
{
Console.WriteLine(v.Category + ":");
foreach (var p in v.Products)
{
Console.WriteLine(" " + p.ProductName);
}
}
}
结果: 饮料: 柴 常 瓜拉那幻想曲 Sasquatch Ale Steeleye Stout CÃ'tedeBlaye Chartreuse verte 怡保咖啡 ...
答案 1 :(得分:0)
如果要在不使用foreach语句的情况下将连接结果发送到模型,则必须使用此代码
IEnumerable<VMFoodFoodMeal> _fmt = (from e in db.FoodProgramMealFood
join j in db.Foods on e.FoodId equals j.Id
select new VMFoodFoodMeal()
{
Id = e.Id,
Name = j.Name,
});
例如在上面的代码中我有一个视图模型(VMFoodFoodMeal
)并希望通过连接结果填充它。
我必须在select
中创建我的模型的新实例,然后填充其属性。
感谢