2015-09-18 12 views
5

Jak mogę sprawdzić, czy pobierający/ustawiający właściwość klasy, rzucił wyjątek? (Przed dostępu do niego)Jak sprawdzić, czy właściwość klasy została zgłoszona wyjątek

Przykład

Na przykład na tym zdjęciu, właściwość procesu ExitTime zwrócił wyjątek typu System.InvalidOperationException

enter image description here

Jeśli używam process.ExitTime, otrzymuję inny wyjątek czasu wykonywania: No process is associated with this object.

+1

Dobre pytanie. Mam właściwości, które spowodowały wyjątki, szczególnie jeśli właściwość, która jest również fabryką (Get Property tworzy instancję, jeśli jeszcze nie istnieje). W takim przypadku nigdy nie pojawia się błąd i może być trudny do wyśledzenia. – jp2code

Odpowiedz

5

Technicznie to nie wyrzucił wyjątku przed użyciem metody dostępowej. Jedynym powodem, dla którego to okno pokazuje, jest to, że próbowano uzyskać właściwość.

Więc nie możesz tego wykryć. Wszystko, co możesz zrobić, to owinąć kod dostępu w bloku try/catch, aby wychwycić wyjątek, gdy zostanie zgłoszony.

Powiązane problemy