各位好, 因新接手一个运行了10多年的C#项目(.net framework 3.5 框架), 以前从未接触过C#, 在从git克隆到本地后, 直接本地调试, 页面报错 :
"無法載入檔案或組件 'Microsoft.SqlServer.Replication, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' 或其相依性的其中之一 " .
从网上搜各种解决方法, 其一是将 Microsoft.SqlServer.Replication.dll 放到vsstudio的\Common7\IDE 安装文件夹, 但是网上找不到相应版本的dll, 请问大家有该版本的Microsoft.SqlServer.Replication.dll 吗 ? 或者大家有什么其他方法可以解决这种问题 ?
备注: 我是 mircosoft visual studio 2019, 该文件夹下面没有Microsoft.SqlServer.Replication.dll , 从 Microsoft SQL Server Management Studio 18 安装文件里找到了 15.0.2000.5 版本 .
下面是报错信息 :
你的问题与代码和程序运行相关,我会尽力帮助你。
关于你的问题,首先需要确定的是,你正在尝试加载的 Microsoft.SqlServer.Replication.dll
确实包含了所需要的特性和功能。在 SQL Server 的某些版本中,这个 DLL 文件可能并没有包含所有的公共接口,尤其是涉及到复制的某些功能,可能需要在 SQL Server 的安装目录中寻找相关的 DLL。
至于你提到的把 Microsoft.SqlServer.Replication.dll
放到Visual Studio的 \Common7\IDE
安装文件夹,这个做法并不常见,也不是标准的解决方案。通常, .dll
文件应该放在应用程序的执行目录中,或者被引用的库的目录中,这样才便于应用程序在需要的时候可以正确地加载它们。
下面是一些建议的步骤来解决你的问题:
Microsoft.SqlServer.Replication.dll
会在 SQL Server 的安装目录中。请检查 SQL Server 的安装目录(默认通常是 C:\Program Files\Microsoft SQL Server\
),看是否存在这个 DLL 文件。Microsoft.SqlServer.Replication.dll
放在那个目录中。Microsoft.SqlServer.Replication
的 NuGet 包。希望这些建议能够帮助你解决问题!
我在C:\Program Files\Microsoft SQL Server\160\SDK\Assemblies中找到了Microsoft.SqlServer.Replication.dll。
你可以看看之前公司用的测试机里还有没有这个
当然.net framework 3.5也太老旧了,也可能是版本不兼容的原因
谢谢大家的回答, 我把项目bin文件夹下面的Microsoft.SqlServer.Replication.dll删掉了, 登录页面就能出来了