多线程时企业库日志记录的错误

时间:2012-11-09 13:56:19

标签: c# multithreading enterprise-library

尝试在新线程中使用Microsoft Enterprise Library Logging时遇到问题。这是我用来启动线程的代码:

Thread cleanupThread = new Thread(new ThreadStart(DirectoryCleanup));
cleanupThread.Start();

在DirectoryCleanup方法中,在以下行中引发错误:

Logger.Write(ex.Message, "General", 100, 0, 
System.Diagnostics.TraceEventType.Critical);

这是我得到的错误:

The type initializer for 'Microsoft.Practices.EnterpriseLibrary.Logging.Logger' 
threw an exception.

这是内部异常:

{"Could not load file or assembly 'Microsoft.Practices.EnterpriseLibrary.Common,
Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its
dependencies. The system cannot find the file specified.":"
Microsoft.Practices.EnterpriseLibrary.Common, Version=4.1.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"}  

记录器在程序的主线程中运行良好。它只有新线程的问题。我花了很多时间搜索,但似乎无法找到答案。 谢谢你的帮助!

更新:

我尝试使用以下代码使用线程池:

Task.Factory.StartNew(DirectoryCleanup);

它产生了与上面相同的错误。

0 个答案:

没有答案