1

ReportViewerコントロールを使用してASP.NETページにサーバーレポートを表示しており、レポートをオブジェクトに取得して、読み取りや変更を行う方法を探しています。

この種のもの:

var rw = report.Width;
var t = ((Chart)report.Body.Item[3]).Title;

方法はありますか、それともXMLファイルの解析に固執していますか?

ETA:

XMLファイルにアクセスする必要があると思い始めていますが、サーバーからXMLファイルをダウンロードし、(メモリ内で)変更してからReportViewerコントロールに送信する方法がわかりません。

ETA2:

レポート定義をダウンロードする方法は次のとおりです(簡潔にするために省略してクリーンアップします)。

// Download the report
var rs = new ReportingService2010();
rs.UseDefaultCredentials = true;
var reportDefinition = rs.GetItemDefinition("/DashboardReports/MyChart");

// Convert to XML
var ms = new MemoryStream(reportDefinition);
var doc = new System.Xml.XmlDocument();
doc.Load(ms);

// To load the stream into the report viewer
stream.Position = 0; // needed because we used the stream above - doc.Load(ms)
this.ReportViewer1.ServerReport.LoadReportDefinition(stream);
4

0 に答える 0