volevo sapere se questo è possibile:Fare un tipo di vincolo generico Funz <T>
public class Foo<T> where T : Func<T>
o
public class Foo<T> where T : Func<>
Sembra che il compilatore mi sta dicendo che non è possibile. Suppongo di poter lanciare un'eccezione di runtime nel costruttore, ma speravo di ottenere un errore del compilatore.
Qualsiasi modo per farlo?
Probabilmente la soluzione corretta qui è quella di accettare solo 'T', quindi utilizzare' Func 'nella classe. –
Ci ho pensato, ma poi dovrei andare come i .NET. Creano 17 overload per supportare la base Func. :) So che è sciocco, voglio solo sapere. –
halivingston
Non dire questa è una buona idea, ma è possibile seguire questo thread https://roslyn.codeplex.com/discussions/543871 e apportare una modifica in Roslyn e compilare il codice utilizzando tale compilatore. – mjsabby