9

System.Data我在我的 Windows 服务项目中有一个参考。我不断收到Exception

无法加载文件或程序集 'System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 或其依赖项之一。该系统找不到指定的文件。

我将其附加FusionLog到我的代码中并发现了以下内容。只有视觉工作室在System.Data看这里:

从以下位置加载程序集管理器:C:\windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll

它应该在这里看(所有其他程序集都是 System.Data)

从以下位置加载程序集管理器:C:\windows\Microsoft.NET\Framework\v4.0.30319\clr.dll

如何将我的System.Data文件指向正确的位置?

我的猜测是Microsoft Commerce Serverdll 可能正在引用 2.0 文件夹。

4

3 回答 3

5

将此添加到 app.config..

  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
  </startup>

如果您需要在 Windows 服务中加载旧版本的 dll,您必须添加它。对于 Web 服务,iis 会自动处理它,但对于 Windows 服务则不然。

于 2012-05-22T13:52:49.130 回答
2

确保您的项目设置为 .Net Framework 4。如果不这样做,请将其设置为完整配置文件(不仅仅是客户端)

于 2012-05-17T19:08:12.960 回答
2

如果您在解决方案资源管理器中选择引用的程序集,请验证运行时版本是否正确(参见下图)。如有必要,您可以删除引用并重新添加以修复它。

此外,如果您使用的是 app.config,请确保它以正确的运行时版本为目标。

在此处输入图像描述

于 2012-05-21T14:52:20.693 回答