1
- 我用ReportExecutionServiceSoap界面來呈現SSRS通過C#編寫ASP.NET應用程序報告
- 我有一個已經實現了撥動項目的工作渲染服務和分頁功能,所以我對代碼非常自信。
- 我想提供「交互式排序」功能。看(非常有限)的文檔,實現應該非常類似於切換功能。
這裏是我實施我的渲染器排序方法:
using (var rsExec = new ReportExecutionService())
{
// Configure the service instance, specifiying the credentials and the sessionId
rsExec.Url = BuildSsrsServiceInvocationUri(m_reportServerUrl);
rsExec.Credentials = System.Net.CredentialCache.DefaultCredentials;
rsExec.UseDefaultCredentials = true;
// Reload the execution context of the previous session
rsExec.ExecutionHeaderValue = new ExecutionHeader();
rsExec.ExecutionHeaderValue.ExecutionID = sessionId;
// Sort
string reportItemResult; // don't know what to do with this
ExecutionInfo2 execInfoResult; // don't know what to do with this
rsExec.Sort2(sortItem,
SortDirectionEnum.Ascending, // TODO: get this from method arg
clearExistingSorts,
PageCountMode.Estimate,
out reportItemResult,
out execInfoResult);
}
從我的控制器,我叫上面的方法,像這樣。 SessionID的是之前呈現的報表的流程id和ID對應於用戶點擊的報表項目:
// Sort the report
m_ReportRenderer.Sort(sessionId, id, clear);
最後,我打電話給我的渲染器的RenderReport方法,期望獲得由列排序的報表輸出用戶點擊:
// Render the report with the new sort order
var renderResult = m_ReportRenderer.RenderReport(sessionId, ImageRoot, actionScript);
的問題:
- 是我對API的理解是否正確?
- 如果不是,我做錯了什麼?
- 如果是這樣,我做錯了什麼?