C# IQueryable.Select始终返回null
我尝试实现一个小型LINQ到TFS提供程序,在这里找到:,它似乎可以工作。 问题是:我们使用的是Facade模式,因此客户端(本例中的GUI)使用SimpleSalesItem模型,但是ofc TFS数据层应该使用WorkItem模型 所以我希望我能做这样的事情,事实上是别人告诉我的:C# IQueryable.Select始终返回null,c#,linq,tfs,C#,Linq,Tfs,我尝试实现一个小型LINQ到TFS提供程序,在这里找到:,它似乎可以工作。 问题是:我们使用的是Facade模式,因此客户端(本例中的GUI)使用SimpleSalesItem模型,但是ofc TFS数据层应该使用WorkItem模型 所以我希望我能做这样的事情,事实上是别人告诉我的: internal static IEnumerable<SimpleSalesItem> Get(Expression<Func<SimpleSalesItem, bool>
internal static IEnumerable<SimpleSalesItem> Get(Expression<Func<SimpleSalesItem, bool>> filter)
{
var t = DataLayer.TFS.TFS.Query().Select(f => new SimpleSalesItem()
{
//Setting the properties of SimpleSalesItem
}).Where(filter);
t3总是空的。
这样做不可能吗?您将如何创建一个简单的解决方案来将两个表达式组合在一起
提前谢谢
Matthias你真正的意思是
null
?还是说它没有数据?(即t3.Any()
为false
)NULL,搞笑一点。这里的原因是LINQ到TFS提供程序的实现吗?是否必须重写一个特殊过程?最初,我不相信Queryable.Select
会返回null
,但由于它只是将任务委托给查询提供程序,因此实际上可以返回null
。当然,这是TFS查询提供程序中的一个错误,返回null
。是的,这基本上是说“buggy LINQ提供程序”
var t2 = DataLayer.TFS.TFS.Query().Where(f => f.Id >= 123);
var t3 = t2.Select(f => f.Id);