1
比方说,我有一个泛型类看起来像这样泛型类传承与LINQ扩展方法
public class GenericCollection<T> : Collection<T>, IQueryable<T>
{
public string SomeCollectionProperty { get; set; }
...
// IQueryable implentations
}
现在我有上面的父类
public class SomeCollection : GenericCollection<SomeType>
{
// Some Additional Functionality here
}
内泛型类的子类我已经充分利用了LINQ扩展方法(例如,Where,First,Select等)
只要我尝试访问我的派生类中的LINQ扩展方法,等它的IQueryable或IEnumerable的
我希望它这样做(内SomeCollection)
public SomeType FindFirst(int SomeProperty)
{
return this.First(t => t.someproperty == SomeProperty);
}
,而是当我打的。在此之后的Visual Studio不给我任何的扩展方法
我令人头大我的大脑试图理解为什么
特别是因为如果在我的泛型类我刚刚从Collection<T>
它实现IEnumerable<T>
具有LINQ继承与它相关的扩展方法我仍然可以在我的泛型类中使用LINQ扩展方法,但是一旦我根据泛型类定义强类型类,我就会丢失LINQ扩展方法
我希望我不会混淆每个人,因为我肯定觉得我很困惑
*叹*我当然会想念明显 这就是我得到我想所有类别的同一组使用声明 感谢白痴检查:-) – TofuBug
@Tofu,它发生在我们所有人。 :) –