讓我們先從這個接口伊巴爾如下。
public interface IBar<T> : IQueryable<T>, IEnumerable<T> where T : class
{
}
我有以下3類Bar1,Bar2和Bar3。
public class Bar1
{
}
public class Bar2
{
}
public class Bar3
{
}
然後,我有所謂的IFoo另一個接口包含通用IBAR每個上述三類,如下所示。
public interface IFoo
{
IBar<Bar1> Bar1 { get; set; }
IBar<Bar2> Bar2 { get; set; }
IBar<Bar3> Bar3 { get; set; }
}
最後,我有三個類Foo1Sample,Foo2Sample和Foo3Sample。每個這個類都包含一個IFace接口的實例,並且還有一個返回IQueryable的Data屬性,如下所示。
public class Foo1Sample
{
IFoo foo;
public IQueryable<Bar1> Data
{
get { return foo.Bar1; }
}
}
public class Foo2Sample
{
IFoo foo;
public IQueryable<Bar2> Data
{
get { return foo.Bar2; }
}
}
public class Foo3Sample
{
IFoo foo;
public IQueryable<Bar3> Data
{
get { return foo.Bar3; }
}
}
我只是想知道如果我可以創建可用於Foo1Sample,Foo2Sample和Foo3Sample這樣的數據屬性可以從IFoo的接口返回適當類型的基類。
不是真的,因爲你的'Sample'每個類返回的IFoo的不同* *財產。泛型僅抽象類型。 – millimoose