C# log4net LogManager.GetLogger中的TypeLoadException
我正在尝试使用log4net在Windows CE/Windows嵌入式项目中提供日志记录。但是,在调试项目时,我遇到了以下异常 发生System.TypeLoadException Message=“TypeLoadException” 堆栈跟踪: 在log4net.LogManager.GetLogger(程序集repositoryAssembly,字符串名) 位于log4net.LogManager.GetLogger(类型) 在Sis.SiLogCE.Broker.StartBroker..cctor()上 在Sis.SiLogCE.Broker.EntryPoint.Program.Main()处 从以下行:C# log4net LogManager.GetLogger中的TypeLoadException,c#,.net,compact-framework,log4net,windows-ce,C#,.net,Compact Framework,Log4net,Windows Ce,我正在尝试使用log4net在Windows CE/Windows嵌入式项目中提供日志记录。但是,在调试项目时,我遇到了以下异常 发生System.TypeLoadException Message=“TypeLoadException” 堆栈跟踪: 在log4net.LogManager.GetLogger(程序集repositoryAssembly,字符串名) 位于log4net.LogManager.GetLogger(类型) 在Sis.SiLogCE.Broker.StartBroker
private static readonly ILog log = LogManager.GetLogger(typeof(StartBroker));
起初,我认为我可能使用了错误的dll/旧的dll,所以我下载了最新版本-我使用的是来自1.2.12-bin-newkey
的log4net.dll,可在.net cp 3.5中找到
我查看了其他示例和文档,我看不出为什么这里会出现类型加载异常。我现在几乎不知道是哪对夫妇导致了这个异常
背景信息:
应用程序将部署在Windows CE 6和Windows Embedded/Windows Mobile 6和6/5设备上
.net 3.5
.netcf
下面的代码块显示如何从名为“log4net.config”的XML文件加载log4net的配置
编辑:
到目前为止,我只在Wince 6.0上进行了测试,所以我刚刚试用了Windows Mobile 6.5-这没什么不同,出现了相同的例外情况。您使用的是二进制版本,还是从源代码构建的?当page提到Compact Framework 1.0和2.0不受二进制版本的支持时,我问了一下,但是如果从源代码版本构建的话,Compact Framework 1.0和2.0是受支持的。内部异常是什么?@sgmoore-不幸的是,没有异常。我刚刚阅读了该页面-谢谢发布。唉,现在有了一个.NETCF构建。这是一个愚蠢的错误,一直盯着我的脸。泰。
string path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().
GetModules()[0].FullyQualifiedName) + "log4net.config";
if (File.Exists(path))
{
XmlConfigurator.ConfigureAndWatch(new FileInfo(path));
}