首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LINQ to SQL return语句

LINQ to SQL return语句
EN

Stack Overflow用户
提问于 2012-01-24 08:24:21
回答 4查看 270关注 0票数 1

在一个项目中,我有一个LINQ to SQL类,它是OrderingSystem.dbml。我有以下代码,在select语句中,我只想从每个表中检索一些行(Products- Categories)。当然,我现在得到的return语句是不正确的。要使用的正确返回语句是什么?提前感谢

代码语言:javascript
复制
    OrderingSystemDataContext database = new OrderingSystemDataContext();

    public List<Product> GetProductsByCategoryID(int CategoryID)
    {
        var result = from p in database.Products
        join c in database.Categories
        on p.CategoryID equals c.CategoryID
        where p.CategoryID == CategoryID
        select new { p.ProductName, p.ProductPrice, p.ProductDescription, c.CategoryName };

        //This is not working
        return result.ToList();
    }
EN

回答 4

Stack Overflow用户

发布于 2012-01-24 08:31:21

在select new上,如果您想要检索产品列表,则必须指定类型,此时它会创建一个匿名类型。尝试使用以下命令进行更改:

代码语言:javascript
复制
OrderingSystemDataContext database = new OrderingSystemDataContext();

public List<Product> GetProductsByCategoryID(int CategoryID)
{
    var result = from p in database.Products
    join c in database.Categories
    on p.CategoryID equals c.CategoryID
    where p.CategoryID == CategoryID
    //Assuming that these are the names of your properties
    select new Product(){ProductName = p.ProductName, ProductPrice = p.ProductPrice, ProductDescription = p.ProductDescription, CategoryName = c.CategoryName };

    return result.ToList();
}
票数 1
EN

Stack Overflow用户

发布于 2012-01-24 08:32:15

您的返回类型是Product,但查询结果使用了匿名类型。

更改此行:

代码语言:javascript
复制
select new { p.ProductName, p.ProductPrice, p.ProductDescription, c.CategoryName };

类似这样的东西:

代码语言:javascript
复制
select new Product { Name = p.ProductName, Price = p.ProductPrice, Description = p.ProductDescription, Category = c.CategoryName };

编辑:

尝试将其替换为:

代码语言:javascript
复制
select p;
票数 0
EN

Stack Overflow用户

发布于 2012-01-24 08:32:49

这是因为在LINQ表达式中,你做了一个创建匿名对象的select new { },而你的方法返回一个Product列表。您应该更改select语句,使其变为select new Product() { ProductName = p.ProductName, ...,其余的取决于您的Product类的结构。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8980545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档