我有一個泛型類使用另一個類,它返回時需要知道什麼樣的初始類「擁有」它 - 這會導致問題;)讓我舉個例子:接口和泛型的雙向引用
public interface IFoo<T>
{
}
public interface IBar
{
IFoo<IBar> Foo { get; set; }
}
public class Foo<T> : IFoo<T> where T : IBar, new()
{
private readonly T _bar;
public Foo()
{
_bar = new T {Foo = this};
}
}
class Bar : IBar
{
public IFoo<IBar> Foo { get; set; }
}
這不起作用Foo =這不起作用 - 即使我試圖將其轉換爲IFoo(編譯但在運行時失敗)。我試圖用各種方式調整代碼,但我還沒有找到一個可行的實現...
希望你看到我想要做的事情,也許你甚至看到我如何實現這一點; - )
這沒有把戲!修復了一個問題並且學到了新的東西不錯:)謝謝! –