2012-10-04 14 views
8

Ho installato l'ultima versione di Monotouch e ho iniziato a vedere il seguente errore quando provo a distribuire la mia build sul dispositivo.Errore di tipo di riferimento generico Monotouch

Errore MT4112: il registrar ha rilevato un tipo non valido L'argomento di tipo generico 'T' deve avere un vincolo di tipo di riferimento per poter essere esportato in ObjectiveC. (MT4112)

Sembra che ho bisogno di aggiungere una clausola where nella classe qui, ma non sembra funzionare in Monotouch.

public class NotificationObject<T> : NSObject 
{ 
    public T Data { get; set; } 
} 

risposta

10

Si tratta di un noto issue in MonoTouch 6.0.2.

Si noti che la creazione di sottoclassi generiche di NSObject o l'esportazione di classi generiche in ObjectiveC non è supportata. Potrebbe funzionare, o potrebbe bloccarsi in modo inspiegabile e casuale.

Abbiamo in programma di supportare almeno alcuni scenari di classi generiche esportate in futuro, ma non è sulla tabella di marcia immediata, quindi non esiste ancora una cronologia.

+0

Grazie per la risposta. Molto apprezzata. –

+0

MonoTouch 6.0.3 sposta l'errore del compilatore in un avvertimento ... che aiuta a compilare il tempo ma potrebbe comunque portare a crash dell'applicazione in base a Rolf e alle note nel rapporto Bug collegato a. – benhorgen

Problemi correlati