我有以下類別:如何實例化一個泛型類C#中的一個抽象的約束
public abstract class ThingBase { }
public class ThingA : ThingBase { }
而下面的泛型類:
public class ThingOwner<ThingType> where ThingType : ThingBase { }
我想創建一個ThingOwner例如像如下:
ThingOwner<ThingBase> thingOwner = new ThingOwner<ThingA>();
有了這個代碼,我得到以下錯誤:「燦不會將類型'ThingOwner(ThingA)'隱式轉換爲'ThingOwner(ThingBase)''「。
我不知道如何使它工作。我知道現在有很多關於泛型類和繼承的討論,但我嘗試了幾乎所有的東西,並且找不到適用於我的解決方案。
謝謝!
的可能重複[不能隱式轉換派生類型它的基泛型類型(http://stackoverflow.com/questions/12324020/cannot-implicitly-convert-derived-type-to-its-base-generic-type ) – csteinmueller