2017-10-16 16 views
0

단추를 클릭 할 때 ReportViewer 컨트롤이 포함 된 .aspx 파일로 리디렉션하여 .cshtml 파일에서 브라우저의 보고서를 호스팅하는 서버에서 SSRS 보고서를로드하려고 테스트하려고합니다.WebForms ReportViewer 컨트롤 오류입니다. "클라이언트가 응답 내용 유형 ''을 (를) 찾았지만 'text/xml'을 (를) 예상했습니다."

ReportViewer1.ProcessingMode = ProcessingMode.Remote; 
IReportServerCredentials irsc = new ReportServerCredentials("username", "password", "domain"); 
ReportViewer1.ServerReport.ReportServerCredentials = irsc; 
ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://domain/ReportServer/ReportViewer.aspx"); 
ReportViewer1.ServerReport.ReportPath = "/Report/path"; 
ReportViewer1.ServerReport.SetParameters(new ReportParameter[] { 
    new ReportParameter("param1", "sample1"), 
    new ReportParameter("param2", "sample2") 
}); 
ReportViewer1.ServerReport.Refresh(); 

는 'ReportServerCredentials'클래스는 클래스 imeplementing의 IReportServerCredentials입니다 다음에서 .aspx 파일의 백엔드에서

<rsweb:ReportViewer ID="ReportViewer1" runat="server"></rsweb:ReportViewer> 

, 나는 다음과 같은 추가.

브라우저를 사용하여 지정된 도메인에 사용자 이름과 암호로 연결하고 지정한 'ReportPath'에서 보고서를보고 보고서에 액세스하고 볼 수 있는지 확인했습니다.

그러나, 프로그램 실행 및 히트 곡이 방법 :

ReportViewer1.ServerReport.SetParameter 

이 오류

가 발생합니다

이 문제의 원인이 무엇
Client found response content type of '', but expected 'text/xml'. 
The request failed with an empty response. 

?

+0

다음과 같이 확장 한 후 물음표 ('? ')를 추가하여 URL을 변경하십시오 :'ReportViewer1.ServerReport.ReportServerUrl = new Uri ("http : //domain/ReportServer/ReportViewer.aspx?");'. –

+0

ReportPath에서'?'를 추가하고'/'를 제거하려고 시도했지만 도움이되지 않습니다. – Khaimeng

+0

'ReportPath'를 바꾸라고 말하지 않았습니다 - 이미'ReportServerUrl' 제안을 시도 했습니까? 또한이 설정이 존재하는 경우'XML/XML 형식을 기대하지만 대신 null 또는 공백을 수신하므로'ContentType'을'text/xml'로 설정하십시오. –

답변

0

실제로 오류는 ReportServerUrl이 잘못되었음을 나타냅니다. 대신

http://domain/ReportServer/ReportViewer.aspx? 

내 경우에는 내가 실제로 보고서에 연결할 수 있었기 때문에 오류가 그 후 사라

http://domain/ReportServer 

사용해야합니다. 그러나 .aspx 파일의 문제로 인해 아무 것도 표시되지 않습니다. 파일의 UI 내용이 페이지에로드되지 않아 페이지가 비어있게되었습니다.