#asp.net #rdlc #reportviewer
#asp.net #rdlc #reportviewer
Вопрос:
при запуске на локальном КОМПЬЮТЕРЕ так отлично. публикация и запуск на сервере файл RDLC не загружается в средство просмотра отчетов и не отображается, и ошибка.
в свойстве RDLC у меня уже есть «Копировать всегда», а также «содержимое»
MasterMFStatusDetail rPTDS = new MasterMFStatusDetail();
rPTDS.Tables["RPTDS"].Merge(ds.Tables[0], true, MissingSchemaAction.Ignore);
rPTDS.Tables["Style"].Merge(dsselect.Tables[0], true, MissingSchemaAction.Ignore);
rPTDS.Tables["MF"].Merge(dsselect.Tables[1], true, MissingSchemaAction.Ignore);
rPTDS.Tables["THC"].Merge(dsselect.Tables[2], true, MissingSchemaAction.Ignore);
rPTDS.Tables["DKT"].Merge(dsselect.Tables[3], true, MissingSchemaAction.Ignore);
rPTDS.Tables["MasterMFParameters"].Merge(MfParameter, true, MissingSchemaAction.Ignore);
rvView.ProcessingMode = ProcessingMode.Local;
rvView.LocalReport.ReportPath = Server.MapPath(reportname);
ReportDataSource datasource = new ReportDataSource("RPTDS", rPTDS.Tables[0]);
ReportDataSource datasource1 = new ReportDataSource("Style", rPTDS.Tables[1]);
ReportDataSource datasource2 = new ReportDataSource("MF", rPTDS.Tables[2]);
ReportDataSource datasource3 = new ReportDataSource("THC", rPTDS.Tables[3]);
ReportDataSource datasource4 = new ReportDataSource("DKT", rPTDS.Tables[4]);
ReportDataSource datasource5 = new ReportDataSource("MasterMFParameters", MfParameter);
rvView.LocalReport.DataSources.Clear();
rvView.LocalReport.DataSources.Add(datasource);
rvView.LocalReport.DataSources.Add(datasource1);
rvView.LocalReport.DataSources.Add(datasource2);
rvView.LocalReport.DataSources.Add(datasource3);
rvView.LocalReport.DataSources.Add(datasource4);
rvView.LocalReport.DataSources.Add(datasource5);
rvView.LocalReport.Refresh();
—Страница Aspx——————————————————
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MasterMFStatusDetailview.aspx.cs" Inherits="LNCReport.Reports.MasterMFStatusDetail.MasterMFStatusDetailview" %>
<%@ Register Assembly="Microsoft.ReportViewer.WebForms" Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">
if (typeof (Sys) !== 'undefined') {
Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(function (sender, args) {
{ { scopeName } } _init();
});
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true"></asp:ScriptManager>
<rsweb:ReportViewer ID="rvView" runat="server" Style="width: auto; height: auto">
<LocalReport EnableHyperlinks="True">
</LocalReport>
</rsweb:ReportViewer>
</form>
</body>
</html>
Комментарии:
1. Можем ли мы также увидеть код вашей страницы aspx. Этого недостаточно, чтобы продолжить здесь.
2. @SalikRafiq пожалуйста, проверьте мою страницу aspx
3. что есть
reportname
в вашем коде. Убедитесь, чтоreportname
это относительный путь, а затем преобразуйте его в абсолютный. Вы пробовали ввести этот относительный путь в ASPX и посмотреть, работает ли это на вашем сервере?4. @SalikRafiq я использовал сервер. Mappath() для получения пути к отчету. И в server.mappath я передал имя отчета как Server. MapPath(«MasterMFStatusDetail.rdlc»).
5. @SalikRafiq Пожалуйста, скажите мне, что делать дальше