【发布时间】:2019-12-10 09:22:05
【问题描述】:
我们正在 .NET Core 2.1 中为 .NET Framework 4.6.1 的应用程序创建一个 XUnit 测试项目,以便我们可以测试针对功能和技术债务清理所做的更改。我们遇到了一个更重要的单元测试的障碍,导致我们将 Log4Net NuGet 包添加到单元测试项目中。添加它后,我们会收到以下错误:
Message: System.MissingMethodException : Method not found: 'log4net.ILog log4net.LogManager.GetLogger(System.String)'.
经过一番研究,我发现该错误是由于缺少XMLConfigurator的项目缺少配置引起的。通常,在 .NET Framework 中,您将使用以下行编辑 AssemblyInfo.cs 文件(根据先前的堆栈溢出答案):
[assembly: log4net.Config.XmlConfigurator]
但是,我们没有 AssemblyInfo.cs 文件、任何 app.config 文件或 json 配置文件。在 .NET Core 中,是否需要添加此配置?我是否将它(以及如何)添加到 .csproj 文件中?我们没有该项目的单一入口点,因为它只是 xunit 测试,有些人正在谈论它。我需要另一个配置文件吗?我似乎无法找到一个连贯或完整的答案。谢谢。
【问题讨论】:
-
罗斯,你有什么解决办法吗?
标签: c# .net-core configuration log4net