XtraReport webdocumentviewer MVCapplication - PullRequest
0 голосов
/ 05 января 2019

Привет, у меня есть приложение MVC, и я хочу использовать DevExpress XtraReports. Мое приложение - чистый MVC без других расширений DevExpress. Я создал страницу для WebDocumentViewer и хочу загрузить ее в модальном всплывающем окне, см. Код ниже:

c# controller
[HttpPost]
public ActionResult ReportViewer(string ReportName) {
    XtraReport xr = new XtraReport();
    switch (ReportName)
    {
        case "ReportPianoDiCarico":
            xr = new ReportPianoDiCarico();
            break;
        default:
            break;
    }
    var cachedReportSource = new CachedReportSourceWeb(xr);
    return View(xr);
}

c# page
function printDetails(e, dt, node, config) {
    var win;   

    var action = "/Home/ReportViewer";
    var lvm = []
    lvm.push({ name: 'ReportName', value: "ReportPianoDiCarico" })

    $.post(action,lvm)
        .done(function (result) {
            if (result) {
                $('#modalDocumentViewer').html(result);
                $('#modalDocumentViewer').modal({ keyboard: true, });
                $('#modalDocumentViewer').data('bs.modal')
                 .handleUpdate();
            }

        })
        .fail(function () {
            $('.alert-danger').show();
            $('#loader-wrapper').hide();
        });
};


c# page ReportViewer  
@using DevExpress.Web.Mvc
@using DevExpress.Web.Mvc.UI
@model DevExpress.XtraReports.UI.XtraReport

<head>
    <link href="~/Template/global/plugins/jquery-ui/jquery-ui.min.css" rel="stylesheet" />

        <script src="~/Template/global/plugins/jquery.min.js" type="text/javascript"></script>
        <script src="~/Template/global/plugins/jquery-ui/jquery-ui.min.js" type="text/javascript"></script>
        <script src="~/Script/globalize.js"></script>
        <script src="~/Script/globalize.currency.js"></script>
        <script src="~/Script/globalize.date.js"></script>
        <script src="~/Script/globalize.message.js"></script>
        <script src="~/Script/globalize.number.js"></script>
        <script src="~/Script/cldr.js"></script>
        <script src="~/Script/cldr.event.js"></script>
        <script src="~/Script/cldr.supplemental.js"></script>
        <script src="~/Script/cldr.unresolved.js"></script>
        <script src="~/Script/knockout-3.3.0.js"></script>
        <script src="~/Script/ace.js"></script>

        @Html.DevExpress().GetStyleSheets(new StyleSheet { ExtensionSuite = ExtensionSuite.Report })

        @Html.DevExpress().GetScripts(new Script { ExtensionSuite = ExtensionSuite.Report })
</head>
<body>
    @*il div contenitore della modale è dichiarato nella pagina chiamante*@
    <div class="modal-dialog modal-lg">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" id="btnModalClose" aria-hidden="true"></button>
                <h4 class="modal-title">Ricerca Contatto</h4>
            </div>
            <div class="modal-body">
                @Html.DevExpress().WebDocumentViewer(settings =>
                    {settings.Name = "documentViewer";}).Bind(Model).GetHtml()
            </div>
        </div>
        <!-- /.modal-content -->
    </div>
    <!-- /.modal-dialog -->
</body>
@section scripts{
    <script type="text/javascript">
        $(document).ready(function () {
            $("#btnModalClose").on('click', function () {
                $('#modalDocumentViewer').modal('hide');
            });
        });
    </script>
}

На моей стороне клиента я получаю следующую ошибку:

Uncaught ReferenceError: ASPx не определен

Это как не загружать файл javascript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...