Nie, to, o co prosisz, nie jest możliwe w C#.
Zamiast tego właściwym rozwiązaniem tego problemu jest użycie lepszych metod analizowania, które w pierwszej kolejności nie będą zgłaszać wyjątków. Jeśli wartości wejściowe mogą być puste, użyj metod analizowania, które akceptują wartości puste.
Pierwszą rzeczą, którą prawdopodobnie musisz zrobić, to użyć typów dopuszczających wartość null dla pól typu int/bool, dzięki czemu możesz obsługiwać wartości null. Następnie musisz stworzyć własne metody parsowania swoich wartości typu ints/bools. Jeśli twoje dane wejściowe są null, zwróć null, jeśli nie, użyj int.TryParse
, bool.TryParse
(lub as
dla każdego, jeśli dane wejściowe są właściwego typu, po prostu rzutuj na object
).
Następnie używając tych metod, zamiast Convert
, w pierwszej kolejności nie będziesz zgłaszał wyjątków (czego nie powinieneś robić tutaj, nawet jeśli mogłoby to zadziałać, ponieważ wyjątki dotyczą wyjątkowych przypadków, a nie oczekiwanego przepływu sterowania).