Nel codice seguente devo dichiarare il metodo MdrResponseInterpreter
static
altrimenti ho errore di compilazione.perché il delegato deve essere statico?
class.... {
private StandardBuilder _mdrResponseBuilder =
new StandardBuilder(MdrResponseInterpreter);
public static bool MdrResponseInterpreter(DNMessageDeliverer builder,
DNFieldSet message)
{
// .... work
}
Perché? Come _mdrResponseBuilder
non è statica Mi aspetto che MdrResponseInterpreter
dovrebbe essere in grado di accedere this
Esiste sicuramente * un * oggetto in quel punto (altrimenti dove viene assegnato il valore?) Ma non ti è permesso accedere ancora a questo. –
Certo, non ero chiaro. Aggiornato la mia risposta. – Botz3000
Continuo a dire che non è chiaro. L'oggetto * esiste * completamente. Potrebbe non essere stato completamente * inizializzato *, ma è vero anche nel corpo del costruttore. (Potrebbero esserci altri corpi di costruttori derivati che devono ancora essere eseguiti, anche ...) –