假设我有树表User,Product和UserProduct。
用户可以拥有许多产品,并且可以将产品分配给许多用户。
我想用linq检索所有用户产品。我在User.cs类中创建了这个方法:
public List<Product> GetProductList()
{
List<Product> listProduct = new List<Product>();
List<UserProduct> listUserProduct = this.UserProdutcs.ToList();
foreach (var item in listUserProduct )
{
listProduct.Add(item.Product);
}
return listProduct;
}
我想知道是否有更好的方法吗?
答案 0 :(得分:2)
您可以使用LINQ
并投射到匿名类型:
var newList = (from products in listProduct
join uProducts in listUserProduct on products.id equals uProducts.productId
select new {
ProductDescription = products.Description,
ProductAttribute = products.YourAttributes,
ProductUserProductAttribute = uProducts.YourAttribute
}).ToList();