【发布时间】:2022-01-25 00:39:19
【问题描述】:
我在 .NET 5.0 框架中创建了控制台应用程序并尝试使用 Microsoft.SqlServer.ManagedDTS 加载包,但我收到错误“无法从程序集“System.Data”加载类型“Microsoft.SqlServer.Server.SqlContext”,版本=4.0.0.0,文化=中性,PublicKeyToken=b77a5c561934e089'.'
代码:
Package package =null;
Application app = new Application();
try
{
string package_path = ConfigurationManager.AppSettings["DTSPackageImport"];
package = app.LoadPackage(@package_path, null);
}
catch (Exception ex)
{
}
finally
{
package.Dispose();
package = null;
}
堆栈跟踪:
at Microsoft.SqlServer.Dts.Runtime.Application.LoadPackage(String fileName, IDTSEvents100 events, Boolean loadNeutral)
at Microsoft.SqlServer.Dts.Runtime.Application.LoadPackage(String fileName, IDTSEvents events, Boolean loadNeutral)
at Microsoft.SqlServer.Dts.Runtime.Application.LoadPackage(String fileName, IDTSEvents events)
at ConsoleApp1.Program.Main(String[] args) in D:\..\Sample Demo\consolDotNet5\consoldotnet5\ConsoleApp1\Program.cs:line 18
ManagedDTS 版本: Microsoft.SqlServer.ManagedDTS\v4.0_15.0.0
请帮我解决这个问题。 提前致谢。
【问题讨论】:
-
粘贴您在 AppSettings "
packageName" 中指定的字符串。你的控制台使用 64 位吗? -
您的 proj 文件中添加了错误的库版本。修复这些错误的最简单方法是在解决方案资源管理器中删除引用下的库的当前版本。然后添加一个新的引用,它将库的正确版本添加到 proj 文件中。然后做一个干净的构建,它将删除与旧库一起使用的 obj 文件。
标签: c# sql-server .net-core .net-5