你能在类中存储LINQ查询吗?

时间:2016-11-02 16:10:09

标签: c# linq class properties

我目前正在编写一个csv解析,C#代码库,如果你能在类成员中存储一个linq查询,我很好奇。那会是这样的工作吗?

情景:

class MyClass{
   public int ID {get;set;}
   public List<SomeOtherClassType> listQuery {get;set;}
} 

我可以以某种方式在该listQuery变量中存储linq查询吗?我问的原因是我不希望将列表保存在内存中,因为它通过不同的函数/方法传递。我只希望它成为一个列表,当我要处理并从中读取数据时。

所以可以这样做。

 var classinstance = new MyClass(){ ID = SomeVar, listQuery = someEnumerable.Where(prop => prop == someValue };

这样,当我处理&#34; classinstance&#34;变量,我想执行一个toList调用,并将属性输出写入文件。可能有更好的方法来做我正在做的事情,但我想知道这是否可能。

1 个答案:

答案 0 :(得分:3)

当然,这样可以正常工作。 (大多数)LINQ查询的返回值是python3 -m pip show -f uwsgi,可以将其视为任何其他类的实例。

当然,您需要将IEnumerable<T>的类型更改为listQuery而不是IEnumerable<SomeOtherClassType>。如果你把它保留为后者,那么你需要调用List<SomeOtherClassType>来存储查询的结果,这将立即执行查询,这不是你想要做的。