可能重复:
Retrieve an object from entityframework without ONE field
我正在使用asp.net mvc。目前我正在使用EF 4.1代码的第一个模型。这里有记录清单(43)。我的课就像,
public class MyTable
{
public string field1{get; set;}
public string field2{get; set;}
.
.
.
public string field20{get; set;}
}
我将它们作为List列表返回。但我不希望field20返回。那么我怎么能跳过我的列表中的特定字段。我用过喜欢的,
(from m in context.MyTable select new{m.field1,m.field2,...,m.field19}).ToList();
它的工作非常好。但我希望使用lambda表达式语法(如
)获得相同的结果context.MyTable.Skip() or any etc.
如何仅返回列表中的特定字段。
答案 0 :(得分:0)
context.MyTable.Select(x => new { x.field1, x.field2, ..., x.field19}).ToList();
如果您不想写所有19个字段,可以MyTable
类实现IEnumerable
public class MyTable : IEnumerable<object>
public IEnumerator<object> GetEnumerator()
{
List<object> list = new List<object>();
list.Add(field1);
list.Add(field2);
...
list.Add(field20);
return list.GetEnumerator();
}
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
然后你可以写
context.MyTable.Select(x => x.Take(19).ToList()).ToList();