J'ai une classe dll qui se présente comme suitHériter classe générique
// 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>
{
}
je veux hériter de cette classe dans ma classe suivante
public abstract class WidgetBuilderBase<TViewComponent, TBuilder>
je surfe sur le net, mais la plupart sur le site i n'a pas obtenu de réponse satisfaisante la plupart d'entre eux dit que nous ne pouvons pas hériter de la classe générique. pourquoi il n'est pas possible d'hériter de la classe générique.
Je suis en train de faire le code suivant
public abstract class WidgetBuilderBase<TViewComponent, TBuilder> : Kendo.Mvc.UI.Fluent.WidgetBuilderBase<TViewComponent, TBuilder>
{
}
Mais il me donne l'erreur suivante.
Le type 'TBuilder' ne peut pas être utilisé comme paramètre de type 'TBuilder' dans le type générique ou méthode 'Kendo.Mvc.UI.Fluent.WidgetBuilderBase. Il n'y a pas de conversion de boxe ou de conversion de paramètre de type de 'TBuilder' à 'Kendo.Mvc.UI.Fluent.WidgetBuilderBase'.
même erreur pour TViewComponent. Comment résoudre ce problème ... :(
Toute aide héritant classe générique
vous avez probablement besoin d'ajouter les mêmes contraintes génériques au type dérivé ... – horgh
Mais je veux le rendre dynamique à l'exécution –
Que voulez-vous être dynamique? Lorsque vous héritez d'une classe générique, vous héritez également de ses contraintes – horgh