0

我的产品类别:

public class Product
{
    public int ProductID { get; set; }
    public string ProductName { get; set; }
    public string CategoryID { get; set; }
    public decimal UnitPrice { get; set; }
    public bool Discontinued { get; set; }
}

我的类别类:

public class Category
{
    public int CategoryId { get; set; }
    public string CategoryName { get; set; }
    public string Description { get; set; } 
}

我正在使用下面的类来打印连接结果。

public class ProductsByCategories
{
    public int CategoryID { get; set; }
    public string CategoryName { get; set; }
    public string CategoryDescription { get; set; }
    public int ProductID { get; set; }
    public string ProductName { get; set; }
    public decimal ProductUnitPrice { get; set; }
    public bool ProductDiscontinued { get; set; }
}

我编写了以下查询来加入 Products 和 Categories 表。

NorthwindDataContext obj = new NorthwindDataContext();
var results = obj.Categories.Join(obj.Products, //I'm getting red wavy line under Join
                category => category.CategoryId,
                product => product.CategoryID,
                (cat, prd) => new ProductsByCategories
                {
                    CategoryID = cat.CategoryId,
                    CategoryName = cat.CategoryName,
                    CategoryDescription = cat.Description,
                    ProductID = prd.ProductID,
                    ProductName = prd.ProductName,
                    ProductUnitPrice = prd.UnitPrice,
                    ProductDiscontinued = prd.Discontinued
                });

我收到以下错误消息。谁能帮我解决这个问题!

无法推断方法 'Enumerable.Join<TOuter, TInner, TKey, TResult>(IEnumerable, IEnumerable, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter, TInner, TResult>)' 的类型参数从用法上。尝试明确指定类型参数。

4

0 回答 0