linq语句查询数据表,查询结果为list集合,
var q = (from c in entities.tb_PI
select c).ToList();
假如需要提取的字段名为ID和Name。
如何提取其中这两个字段的值并存在新的list集合中?
var q = (from c in entities.tb_PI
select new { ID = c.ID, Name = c.Name }).ToList();//查询结果存放在匿名对象中
List<tb_PI> list = q.Select(qq => new tb_PI() { ID = qq.ID, Name = qq.Name ).ToList();
return list;//将匿名对象中的数据转化成list类型
这样返回的list集合list包含了所有的字段,只需要ID以及Name,并且这两个字段都有值,其他的字段没有值,但是不需要。
如果要存在于真实的对象中,则新建一个类d,d中只有你说的Id,Name。
var q=(from c in entites.tb_PI select new d{ID=c.ID,Name=c.Name}).ToList();
List<Tuple<int,string>> q = (from c in entities.tb_PI select Tuple<int,string>.Create(c.ID,c.Name)).ToList();
var q = (from c in entities.tb_PI select new { ID = c.ID, Name = c.Name }).ToList();
就是这样啊
这样返回的q类型不是List<tb_PI>类型。
@1sa2sa: tb_PI包含其他属性 做不到你说的那样。你只要2个字段就用匿名对象或新建一个实体类
public class xx{
public string Id{get;set;}
public string Name{get;set}
}