gpt4 book ai didi

c# - 是否可以在运行时将 System.Data.SqlServerCe 4.0.0.0 与版本 4.0.0.1 交换?

转载 作者:行者123 更新时间:2023-11-30 21:14:43 25 4
gpt4 key购买 nike

我的应用程序引用了一个依赖于 System.Data.SqlServerCe 4.0.0.0 的库项目。

我正在尝试私有(private)部署我的应用程序,但这需要 System.Data.SqlServerCe 4.0.0.1。

因此,我设置了我的应用程序,以便将 System.Data.SqlServerCe 4.0.0.1 复制到输出目录(复制到与可执行文件相同的文件夹中),并在我的 App.config 文件中添加了一个 assemblyBinding:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
...
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity
name="System.Data.SqlServerCe.dll"
publicKeyToken="89845dcd8080cc91" />
<bindingRedirect oldVersion="4.0.0.0" newVersion="4.0.0.1" />
<codeBase version="4.0.0.1" href="System.Data.SqlServerCe.dll" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

不幸的是,我遇到了这个错误:

Could not load file or assembly 'System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0X80131040)

问题

是否可以在运行时将 System.Data.SqlServerCe 4.0.0.0 与版本 4.0.0.1 交换以允许私有(private)部署?

最佳答案

您是否尝试删除代码库标签:http://blogs.msdn.com/b/sqlservercompact/archive/2010/05/12/troubleshooting-problem-with-private-deployment-of-sql-server-compact-3-5sp2-entity-dll.aspx看起来您也应该从名称中删除 .dll。下面的配置文件可以强制 Exportsqlce40.exe 针对私有(private) dll 文件运行(它们必须与 .exe 位于同一文件夹中):

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Data.SqlServerCe" publicKeyToken="89845dcd8080cc91" />
<bindingRedirect oldVersion="4.0.0.0" newVersion="4.0.0.1" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

关于c# - 是否可以在运行时将 System.Data.SqlServerCe 4.0.0.0 与版本 4.0.0.1 交换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6078596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com