A C# Program jest wywoływana przez:Czy można spróbować/złapać wokół całego programu C#?
Application.Run (new formClass());
Chciałbym umieścić try/catch wokół całej sprawy pułapkę żadnych niezłapane wyjątki. Kiedy umieszczam to wokół tej metody Run, wyjątki nie są wychwytywane; formant zwraca tylko tutaj, gdy program kończy się po nieprzechwyconym wyjątku.
Gdzie mogę umieścić try/catch, aby objąć cały program? Dzięki!
Wydaje mi się, że brakuje ci punktu wyjątku, jeśli wyjątek jest bańką do najwyższej warstwy aplikacji, oznacza to, że coś jest nie tak, co wymaga mniejszej ingerencji w kod. Umieść try/catch wokół kodu, który Twoim zdaniem może się nie udać i złagodzenie (jeśli to możliwe) w haczyku. Jeśli nie można go złagodzić, tzn. Aplikacja nie może odzyskać danych, aplikacja musi zakończyć się niepowodzeniem. – Lazarus
PO nie pyta, w jaki sposób powinny być stosowane wyjątki - po prostu jak je złapać w określonym scenariuszu. Oczywiście jeśli wyjątek jest bańką do górnej warstwy, to coś jest nie tak - wydaje się, że chce dowiedzieć się więcej informacji, gdy coś jest nie tak, więc można się do niego odnieść. Odpowiedź Mitcha jest o wiele bardziej pomocna, niż zakładanie, że op nie wie, co robi. – Maggie
Złapanie wszystkich wyjątków na najwyższym poziomie może być bardzo przydatne dla podjęcia ostatecznego wysiłku w celu zgłoszenia, co się wydarzyło przed wyjściem. W wielu przypadkach wydaje mi się, że jest to lepsze niż oglądanie standardowego okna "ten program się zawiesza, proszę to zgłosić do Microsoft". – noctonura