如何为控制台应用程序设置ElmahCore?

时间:2018-11-28 08:21:27

标签: .net-core console-application elmah

我想使用Elmah记录控制台应用程序的错误。我找到了ElmahCore和elmah.io.core,但是我不知道如何在控制台应用程序上设置它们中的任何一个。我使用的是.net core

1 个答案:

答案 0 :(得分:1)

ELMAH(开放源代码项目)不适用于.NET Core。 ElmahCore与ASP.NET Core有很多依赖关系,但是如果您确实愿意,可以执行以下操作:

class Program
{
    static void Main(string[] args)
    {
        var log = new MemoryErrorLog();
        log.Log(new Error(new Exception()));
        var errors = new List<ErrorLogEntry>();
        var result = log.GetErrors(0, 10, errors);
        Console.WriteLine(result);
        Console.WriteLine(errors);
        Console.ReadLine();
    }
}

您可以将MemoryErrorLog替换为您选择的目标记录器。

名为elmah.io.core的软件包是elmah.io中已弃用的软件包。 elmah.io是ELMAH的商业云版本,其中,所有错误都存储在云(list of differences between ELMAH and elmah.io)中。 elmah.io通过Elmah.Io.Client NuGet包或使用一种流行的日志记录框架(如SerilogNLog)的集成与.NET内核配合使用。

我不建议您使用ElmahCore登录控制台应用程序。它是为ASP.NET Core创建的。从控制台应用程序进行日志记录有更好的选择,例如上述的日志记录框架。