Qualcuno ha qualche consiglio per il debug di eccezioni in un blocco di inizializzatore di oggetti C#? La sintassi dell'inizializzatore dell'oggetto è praticamente tutto o niente, il che può rendere particolarmente difficile la risoluzione dei problemi all'interno di una query LINQ. A corto di rompere la creazione dell'oggetto in un metodo separato, c'è qualcosa che posso fare per vedere quale setter di proprietà lancia un'eccezione?Debug di un inizializzatore di oggetti C#
risposta
Disattivazione dell'opzione per passare sopra i setter di proprietà [Passa sopra proprietà e operatori (solo gestiti)] può permetterti di entrare nel sistema di gestione delle proprietà.
In caso contrario, l'opzione migliore è spesso quella di scomporre e eseguire il debug all'esterno dell'istruzione LINQ. È possibile avvolgere i parametri di inizializzazione in un tipo anonimo in linq e costruire gli oggetti al di fuori dell'istruzione linq a scopo di debug.
Scompare dal blocco inizializzatore oggetto dove si impostano singolarmente ciascuna proprietà. In questo modo puoi effettivamente entrare nel codice.
Hai impostato VS per interrompere quando viene generata un'eccezione? (l'impostazione predefinita è di interrompere solo su eccezioni non gestite). Debug | Eccezioni e controllo "gettato".
Questo solo non è probabilmente una risposta alla tua domanda, ma potrebbe aiutare con il debug.
Oltre a ciò, è possibile interrompere temporaneamente il codice dal blocco di inizializzazione (solo per il debug), quindi, se lo si desidera, è possibile ripristinare il blocco di inizializzazione una volta che il codice funziona.
- 1. Swift ha un inizializzatore di oggetti implicito, come in C#?
- 2. È possibile utilizzare un inizializzatore di oggetti C# con un metodo di fabbrica?
- 3. Inizializzatore oggetto per raccolte oggetti
- 4. È possibile utilizzare Resharper per rimuovere un inizializzatore di oggetti?
- 5. Esiste un costrutto di inizializzatore di oggetti speciale in PHP come avviene ora in C#?
- 6. Creazione di un inizializzatore
- 7. C# - chiusure su campi di classe all'interno di un inizializzatore?
- 8. Assegnazione condizionale inizializzatore C#
- 9. Elenco inizializzatore per oggetti con costruttore predefinito
- 10. Inizializzatore oggetto con interfaccia esplicita in C#
- 11. Objective-C - inizializzatore dinamico singleton?
- 12. Inizializzatore raccolta C# 6 - Chiarificazione?
- 13. C++ specificare indici di matrice in inizializzatore, come C
- 14. Inizializzatore designato e inizializzatore di convenienza in ogg-c e come crearli correttamente e legarli insieme
- 15. Esempio elenco inizializzatore C++ 0x
- 16. Debug di thread C#
- 17. Ci sono degli svantaggi nell'uso di un inizializzatore di oggetti vuoto?
- 18. ritorno inizializzatore di lista
- 19. Inizializzatore designato di UITextView
- 20. Elenco inizializzatore * argomento * ordine di valutazione
- 21. Un elenco inizializzatore vuoto contiene un codice C valido?
- 22. La variabile C++ ha un inizializzatore ma un tipo incompleto?
- 23. Creazione di C++ oggetti
- 24. C++ remove_if su un vettore di oggetti
- 25. Utilizzo di un inizializzatore in un test di unità?
- 26. C++ Errore di compilazione: è inizializzatore ma tipo incompleto
- 27. Inizializzatore di classe in Swift?
- 28. Perché questo inizializzatore di oggetti nidificati genera un'eccezione di riferimento null?
- 29. Come passare un elenco di oggetti da C++ a C#?
- 30. Cosa significa punto (.) In un inizializzatore di struct?
Puoi spiegare cosa intendi per "includere i parametri di inizializzazione in un tipo anonimo"? Dovrei passare il tipo anonimo al costruttore in qualche modo, o semplicemente creare un metodo di factory utility che assegnerebbe le proprietà? – technomalogical
In questo momento, dai suoni di ciò, stai usando i risultati della tua query per costruire i tuoi oggetti, e ritieni che stia causando un errore (sulla costruzione dell'oggetto). Invece, è sufficiente restituire i risultati della query, quindi creare gli oggetti in un passaggio separato (utilizzando i risultati), in modo da evitare i blocchi di inizializzazione dell'oggetto. –
Ma è possibile in qualche modo passare un tipo anonimo a un costruttore? – wcm