Nel mio programma, ho creare le espressioni lambda dinamici e poi compilare ai delegati. Questi delegati vengono quindi richiamati per estrarre informazioni dalle mie entità. Alcuni delegati possono lanciare eccezioni, ho preso l'eccezione dove chiamo il delegato. Ho abilitato "Abilita solo il mio codice" e applicato l'attributo [DebuggerNonUserCode] a dove è stato creato LambdaExpression, dove è stato compilato e dove chiamato. Ma poiché in Debug> Eccezioni> Common Language Runtime Exceptions, la casella di controllo Gettato è selezionata, lo studio visivo si arresta sempre sull'errore, che è un grave inconveniente per gli sviluppatori.Impedire debugger di interrompersi in un'eccezione in un LambdaExpression Compiled
Sembra che [DebuggerNonUserCode] dovrebbe in qualche modo essere applicato al delegato compilato, ma come? O qualche altro suggerimento?
Grazie.
Non si interrompe in una prima eccezione di modifica? Possono essere disabilitati separatamente. – CodingBarfield
No, si ferma sempre sull'errore, non solo la prima volta. – Alireza
Sei sicuro che l'eccezione sia catturata da qualche parte. Se sono presenti eccezioni non applicate che causano il blocco dell'applicazione, Visual Studio mostra sempre il messaggio Eccezione. – CodingBarfield