相关疑难解决方法(0)

使用linq选择特定列:什么被转移?

我参考这个例子:返回选定的指定列

Quote:如果BlobDetails不是LINQ实体,那么你可以直接执行:

var qry = from b in dc.Blobs
          orderby b.RowVersion descending
          select new BlobDetails {
              Id = b.Id, Size = b.Size,
              Signature = b.Signature, RowVersion = b.RowVersion};

return qry.ToList();
Run Code Online (Sandbox Code Playgroud)

我看到他们正在通过ORM工具LINQ TO SQL在查询中选择特定列.ORM工具的批评者说,如果我没记错的话,ORM工具会从表中选择并返回整个对象,并限制只选择特定列的选项,就像通过经典的SQL编程一样.当然,当我看到这个例子时,我对此表示怀疑,但是,我仍然不断问自己这样一个问题:数据库是仅返回所选列,还是返回整个对象,将列过滤留给ORM工具?

从这个例子中,他们还有一个名为Blobdetails的类:

public class BlobDetails   
{  
    public int Id { get; set; }  
    public string Signature { get; set; }  
    public int Size { get; set; }  
    public System.Data.Linq.Binary RowVersion { get; set; }     
}
Run Code Online (Sandbox Code Playgroud)

每次我只想通过LINQ从表中选择几列时,是否需要创建自己的类?

sql linq orm

10
推荐指数
1
解决办法
4万
查看次数

标签 统计

linq ×1

orm ×1

sql ×1