Ich versuche, einen SSRS-Bericht von einem Server, der die Berichte im Browser hostet, aus einer .cshtml-Datei zu laden, indem ich ihn in eine ASPX-Datei umleite, die ein ReportViewer-Steuerelement enthält, wenn auf eine Schaltfläche geklickt wird.WebForms ReportViewer-Steuerungsfehler. "Der Client hat den Inhalt des Antwort-Inhalts von '' gefunden, aber erwartet 'text/xml'."
<rsweb:ReportViewer ID="ReportViewer1" runat="server"></rsweb:ReportViewer>
Im Backend der ASPX-Datei, habe ich die folgenden:
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();
Die 'ReportServerCredentials' Klasse ist eine Klasse imeplementing IReportServerCredentials.
Ich habe versucht, einen Browser zu verwenden, um eine Verbindung mit der angegebenen Domäne mit dem Benutzernamen und dem Kennwort herzustellen und den Bericht im angegebenen 'ReportPath' anzuzeigen und zu überprüfen, dass ich erfolgreich auf den Bericht zugreifen und ihn anzeigen konnte.
jedoch, wenn das Programm läuft und Hits diese Methode:
ReportViewer1.ServerReport.SetParameter
dieser Fehler auftreten:
Client found response content type of '', but expected 'text/xml'.
The request failed with an empty response.
Was dieses Problem verursacht?
Versuchen Sie, die URL durch Hinzufügen eines Fragezeichens ('?') Nach der Erweiterung wie folgt zu ändern: 'ReportViewer1.ServerReport.ReportServerUrl = new Uri (" http: //domain/ReportServer/ReportViewer.aspx? ");'. –
Ich habe versucht, "?" Hinzuzufügen und '/' in ReportPath zu entfernen, das hilft nicht. – Khaimeng
Ich sage dir nicht, dass du 'ReportPath' ändern sollst - hast du bereits vorgeschlagen 'ReportServerUrl'? Versuchen Sie auch, 'ContentType' auf' text/xml' zu setzen, wenn eine solche Einstellung existiert, da die Berichtsdaten das XML-Format erwarten, aber stattdessen null oder leer erhalten. –