标签: iqueryable

返回IEnumerable <T>与IQueryable <T>

返回IQueryable<T>IEnumerable<T>?有什么区别?

IQueryable<Customer> custs = from c in db.Customers
where c.City == "<City>"
select c;

IEnumerable<Customer> custs = from c in db.Customers
where c.City == "<City>"
select c;
Run Code Online (Sandbox Code Playgroud)

两者都会延迟执行,何时应该优先于另一个?

c# linq ienumerable iqueryable linq-to-sql

1051
推荐指数
13
解决办法
22万
查看次数

410
推荐指数
10
解决办法
17万
查看次数

将IQueryable与Linq一起使用

什么是使用IQueryable在LINQ的背景下?

它是用于开发扩展方法还是任何其他目的?

c# linq iqueryable

245
推荐指数
3
解决办法
25万
查看次数

IQueryable和IEnumerable之间有什么区别

我对这种差异感到困惑.作为.Net的新手,我知道我可以IEnumerables使用Linq扩展进行查询.那么这是什么IQueryable以及它有何不同?


另请参见IQueryable [T]和IEnumerable [T]之间的区别是什么?与这个问题重叠.

linq ienumerable .net-3.0 iqueryable

148
推荐指数
5
解决办法
8万
查看次数

Enumerable.Empty <T>()等效于IQueryable

当一个方法返回IEnumerable<T>并且我没有任何东西可以返回时,我们可以使用Enumerable.Empty<T>().

对于返回的方法,是否有与上述相同的内容 IQueryable<T>

c# return iqueryable

126
推荐指数
5
解决办法
2万
查看次数

AsQueryable()的目的是什么?

是的目的AsQueryable()只是让你可以围绕传递IEnumerable到所期望的方法IQueryable,或者是有一个有用的理由表示IEnumerableIQueryable?例如,它应该是这样的情况:

IEnumerable<Order> orders = orderRepo.GetAll();

// I don't want to create another method that works on IEnumerable,
// so I convert it here.
CountOrders(orders.AsQueryable());

public static int CountOrders(IQueryable<Order> ordersQuery)
{
    return ordersQuery.Count();
}
Run Code Online (Sandbox Code Playgroud)

或者它实际上是否使它做了不同的事情:

IEnumerable<Order> orders = orderRepo.GetAll();
IQueryable<Order> ordersQuery = orders.AsQueryable();

IEnumerable<Order> filteredOrders = orders.Where(o => o.CustomerId == 3);
IQueryable<Order> filteredOrdersQuery = ordersQuery.Where(o => o.CustomerId == 3);

// Are these executed in a different way?
int result1 = filteredOrders.Count(); …
Run Code Online (Sandbox Code Playgroud)

.net c# linq ienumerable iqueryable

94
推荐指数
4
解决办法
7万
查看次数

是否有Queryable.SelectMany()方法的C#LINQ语法?

使用C#LINQ语法编写查询时,有没有办法使用关键字语法中的Queryable.SelectMany方法?

对于

string[] text = { "Albert was here", 
                  "Burke slept late", 
                  "Connor is happy" };
Run Code Online (Sandbox Code Playgroud)

使用流畅的方法,我可以查询

var tokens = text.SelectMany(s => s.Split(' '));
Run Code Online (Sandbox Code Playgroud)

是否有类似的查询语法

var tokens = from x in text selectmany s.Split(' ')
Run Code Online (Sandbox Code Playgroud)

c# linq iqueryable keyword

80
推荐指数
3
解决办法
2万
查看次数

要返回IQueryable <T>或不返回IQueryable <T>

我有一个存储库类,它包装了我的LINQ to SQL数据上下文.存储库类是一个业务线类,包含所有数据层逻辑(以及缓存等).

这是我的repo界面的v1.

public interface ILocationRepository
{
    IList<Location> FindAll();
    IList<Location> FindForState(State state);
    IList<Location> FindForPostCode(string postCode);
}
Run Code Online (Sandbox Code Playgroud)

但是为了处理FindAll的分页,我正在讨论是否要公开IQueryable <ILocation>而不是IList来简化分页等环境的接口.

从数据仓库中暴露IQueryable的利弊是什么?

很感谢任何形式的帮助.

.net c# iqueryable linq-to-sql

73
推荐指数
2
解决办法
2万
查看次数

IList <T>到IQueryable <T>

我有一个List,我想将它包装成IQueryable.

这可能吗?

linq-to-objects iqueryable

68
推荐指数
2
解决办法
2万
查看次数

IQueryable,List,IEnumerator之间的区别?

我想知道IQueryable,List,IEnumerator和我何时应该使用每个的区别?

例如,当使用Linq to SQL时,我会做这样的事情:

public List<User> GetUsers()
{
   return db.User.where(/* some query here */).ToList();
}
Run Code Online (Sandbox Code Playgroud)

现在我想知道我是否应该使用IQueryable.我不确定在列表中使用它的好处.

c# linq ienumerable list iqueryable

62
推荐指数
2
解决办法
5万
查看次数