Sau đây hoạt động tốt với các loại IEnumerable, nhưng có cách nào để có được một cái gì đó như thế này làm việc với các loại IQueryable đối với một cơ sở dữ liệu sql?LINQ giữa nhà điều hành
class Program
{
static void Main(string[] args)
{
var items = new[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, };
foreach (var item in items.Where(i => i.Between(2, 6)))
Console.WriteLine(item);
}
}
static class Ext
{
public static bool Between<T>(this T source, T low, T high) where T : IComparable
{
return source.CompareTo(low) >= 0 && source.CompareTo(high) <= 0;
}
}
Nice. Điều này cũng khiến tôi hiểu biểu thức của Linq nhiều hơn một chút. – Dykam
Jon, Rất tiếc, tôi chưa chấp nhận điều này. Đã được thời tiết trong một vài ngày. Câu hỏi: bạn viết về cách sử dụng toán tử so sánh thay vì IComparable. Nó sẽ trông như thế nào? Điều gì sẽ trông giống như một số điện thoại IEcủa IEnumerable? Tôi cần phải chơi với điều này và hy vọng sẽ làm điều đó ngày hôm nay. Cảm ơn nhiều! –
andleer
Sử dụng 'IComparable' bạn cần các cây biểu thức để gọi CompareTo hai lần. Tất cả đều có thể làm được, nhưng hơi đau. Không chắc chắn ý của bạn về "Cái gì sẽ trông giống như một 'IEnumerable '? " - bạn có thể xây dựng? –