使用 Linq 和 Lambda 表达式从表中选择多个字段

发布于 2024-09-24 00:16:52 字数 319 浏览 1 评论 0原文

我有一个 DataContext (db),可以访问 SQL Express 数据库中的表,我只想从中提取 tblItem 表中多个字段中的三个:

// this does not work - what is the correct way to do it?  
var items = db.tblItems.Select(i => i.id && i.name && i.totalAmount);

目的是吐出这些字段到 csv 文件(逗号分隔)。 var 是执行此操作的最佳方法吗?

I have a DataContext (db) that can access the tables in my SQL Express database, from which I would like to extract only three of the multiple fields in the tblItem table:

// this does not work - what is the correct way to do it?  
var items = db.tblItems.Select(i => i.id && i.name && i.totalAmount);

The intention is to spit these out into a csv file (comma separated). Is a var the best way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

爱本泡沫多脆弱 2024-10-01 00:16:52

为此,您必须使用匿名对象:

var items = db.tblItems.Select(i => 
            new { 
                  ID = i.id, 
                  Name = i.name, 
                  TotalAmount = i.totalAmount
                });

您可以像遍历任何其他集合一样遍历 items

foreach(var item in items)
{
  //do stuff
}

You will have to use an anomynous object for this:

var items = db.tblItems.Select(i => 
            new { 
                  ID = i.id, 
                  Name = i.name, 
                  TotalAmount = i.totalAmount
                });

You can iterate over items like over any other collection:

foreach(var item in items)
{
  //do stuff
}
傾城如夢未必闌珊 2024-10-01 00:16:52

如果“a var”指的是匿名类型,那么可能:

var items = db.tblItems.Select(i => new { i.id, i.name, i.totalAmount });

If by "a var" you mean an anonymous type, then probably:

var items = db.tblItems.Select(i => new { i.id, i.name, i.totalAmount });
一萌ing 2024-10-01 00:16:52

是的,要么使用像这样的匿名类型

var items = 
db.tblItems.Select(i => 
new
{
 i.id,
 i.name,
 i.totalAmount,
});

,要么如果你有一个类,则使用它。

 var items = 
    db.tblItems.Select(i => 
    new ItemsClass() //Or whatever
    {
     Id = i.id,
     Name = i.name,
     TotalAmount = i.totalAmount,
    });

Yes, either use an anonymous type like so

var items = 
db.tblItems.Select(i => 
new
{
 i.id,
 i.name,
 i.totalAmount,
});

Or if you have a class use it instead.

 var items = 
    db.tblItems.Select(i => 
    new ItemsClass() //Or whatever
    {
     Id = i.id,
     Name = i.name,
     TotalAmount = i.totalAmount,
    });
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文