我有一个类中的DLL我想继承这个类在我下面的类继承泛型类
public abstract class WidgetBuilderBase<TViewComponent, TBuilder>
我上网净看起来如下
// Summary:
// View component Builder base class.
public abstract class WidgetBuilderBase<TViewComponent, TBuilder> : IHtmlString, IHideObjectMembers
where TViewComponent : global::Kendo.Mvc.UI.WidgetBase
where TBuilder : global::Kendo.Mvc.UI.Fluent.WidgetBuilderBase<TViewComponent, TBuilder>
{
}
但大部分的网站上我没有得到满意的答案 其中大部分说我们不能继承泛型类。为什么不能继承泛型类。
我尝试做下面的代码
public abstract class WidgetBuilderBase<TViewComponent, TBuilder> : Kendo.Mvc.UI.Fluent.WidgetBuilderBase<TViewComponent, TBuilder>
{
}
但它给了我下面的错误。
类型“TBuilder”不能用作 一般类型的类型参数“TBuilder”或方法 “Kendo.Mvc.UI.Fluent.WidgetBuilderBase”。 没有从 'TBuilder'到 'Kendo.Mvc.UI.Fluent.WidgetBuilderBase'的装箱转换或类型参数转换。
与TViewComponent同样的错误。如何解决这个问题... :(
在继承泛型类的任何帮助
您可能需要将相同的通用约束添加到派生类型中... – horgh
但是我想在运行时使其变为动态 –
您想要什么动态?当继承泛型类时,你也继承它的约束 – horgh