首页 > 解决方案 > XslCompiledTransform.Load(type):无法加载文件或程序集'System.Data.SqlXml

问题描述

我正在尝试在我的 .net core 2.0 解决方案中加载已编译的 XSL(使用 XSLTC.exe),但出现以下错误。

System.IO.FileNotFoundException:'无法加载文件或程序集'System.Data.SqlXml,版本 = 4.0.0.0,文化 = 中性,PublicKeyToken = b77a5c561934e089'。该系统找不到指定的文件。'

 Assembly asm = Assembly.LoadFrom(@"...");
 Type t = asm.GetType("...");
 myXslTransform.Load(t);

文档说,它应该加载从 XSLTC.exe 生成的文件但不工作。

我有什么遗漏的吗,请帮忙。

标签: .netxml.net-corexslt-1.0.net-standard

解决方案


.NET Core 没有 System.Data.SqlXml 或当前等效的 Microsoft.Data.SqlXml 作为收件箱或开箱即用程序集包。包含允许读取普通 SqlXml 数据的 SqlXml 类的包/程序集 .NET Core 是 System.Data.SqlClient,可在 .NET Core 1.0 或更高版本中使用。

要获得更高级的功能,您需要使用既未随 .NET Framework 也未随 .NET Core 安装的 Microsoft.Data.SqlXml。目前获得它的最佳方法是通过安装 SQLXML 4.0 SP1 包 - 最新的 Mirosoft.Data.SqlXml 版本最有可能是 4.0.3。从 SQL Server 2008 开始,最新版本的 SQLXML 不包含在 SQL Server 中。


推荐阅读