以编程方式访问RDL文件 - (抛出异常)

时间:2012-12-18 13:06:20

标签: c# .net reporting-services

我有超过1000个rdl文件,并希望在每个文件中记录数据源的名称。我正在尝试在C#中以编程方式加载和访问单个rdl文件 并尝试了以下代码行。

Microsoft.ReportingServices.RdlObjectModel.Report.Load("C:\\abc.rdl");

但是抛出以下异常。为什么抛出这个异常?


  

System.Xml.XmlException未处理Message =“反序列化   失败:无法加载文件或程序集   'Microsoft.ReportingServices.ReportDesign.Common,Version = 10.0.0.0,   Culture = neutral,PublicKeyToken = 89845dcd8080cc91'或其中一个   依赖。该系统找不到指定的文件。 5号线,   位置6.“Source =”Microsoft.ReportingServices.Designer.Controls“   LineNumber = 5 LinePosition = 6 StackTrace:          在Microsoft.ReportingServices.RdlObjectModel.Serialization.RdlReader.ReadRoot(类型   型)

2 个答案:

答案 0 :(得分:2)

  

系统找不到指定的文件。

我猜想也许你错过了依赖或其他什么。当然,Microsoft.ReportingServices.ReportDesign.Common程序集在您的系统上?

答案 1 :(得分:2)

尝试使用fuslogvw.exe查看缺少哪个程序集。或者只是将RDL加载到XmlDocument或XDocument中并使用XPath或XLinq。