首页 新闻 会员 周边 捐助

不用 try...catch ,如果处理启动过程在 Program.cs 中发生的异常

0
悬赏园豆:30 [已解决问题] 解决于 2023-02-10 08:07

Program.cs 中有很多代码,如果为了处理异常将一堆代码包裹在 try...catch 中不美观,有没有什么办法在不加 try...catch 的情况下处理异常?

dudu的主页 dudu | 高人七级 | 园豆:29566
提问于:2023-02-09 17:37

winform程序还是asp.net core?

会长 1年前

@会长: ASP.NET Core

dudu 1年前
< >
分享
最佳答案
0

通过 AppDomain.CurrentDomain.UnhandledException 事件解决了

var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();

AppDomain.CurrentDomain.UnhandledException += (object sender, UnhandledExceptionEventArgs e) =>
{
    if (e.IsTerminating && e.ExceptionObject is Exception ex)
    {
        var assemblies = AppDomain.CurrentDomain.GetAssemblies();
        assemblies.ToList().ForEach(Console.WriteLine);
    }
};

app.MapGet("/", () => "Hello World!");

throw new Exception("UnhandledException");

app.Run();

参考:

dudu | 高人七级 |园豆:29566 | 2023-02-10 07:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册