我应该如何编写这个实体框架查询?

我有两个表,Product和ProductCategories。 产品只能有一个类别类型。 我需要查询数据库并查找给定ProductID的产品类别。 Product表中有一个名为ProductCategoryID的列,ProductCategories的主键是ProductCatrgoryID。 这是我迄今为止所尝试的,但我得到:

Models.Product does not contain a definition for "ProductID"

代码:

    public ProductCategory GetProductCategory(int id)
    {
        var products = db.ProductCategories
            .Where(c => c.Products.ProductID == id)
            .FirstOrDefault();

        return products;
    }

这通过查找具有ID的产品的ProductCategories:

public ProductCategory GetProductCategory(int id)
{
    var products = db.ProductCategories
        .Where(c => c.Products.Any(p=>p.ProductID == id))
        .FirstOrDefault();

    return products;
}

这是通过找到产品,然后返回它的ProductCategory:

public ProductCategory GetProductCategory(int id)
{
    var product = db.Products
        .Include(p=>p.ProductCategory)
        .First(p=>p.ProductID==id);

    return product.ProductCategory;
}
链接地址: http://www.djcxy.com/p/37493.html

上一篇: How should I write this Entity Framework query?

下一篇: Using entity framework to get info from three connected tables