Страница 1 из 1

Не компилируются страницы с отчётами

Добавлено: 17 май 2013, 07:35
zmey
Здравствуйте. Хотим попробовать Ваши отчёты в MVC приложениях, скачали trial.
На моей машине есть только MVC 4(возможно отсюда и проблемы), MVC 3 не установлен
1) Ни один из проектов в Samples не открылся.
2) Сделал небольшой проект по аналогии с примерами. Странички с отчётами не компилируются
- using'и в razor на подключаются, соответсвенно хелпер не находится.
- в коде контроллера никаких проблем нет

Скажите, что не так? Проект цепляю к сообщению.

Re: Не компилируются страницы с отчётами

Добавлено: 18 май 2013, 17:25
Vladimir
Здравствуйте,

Мы подготовили для вас привет MVC4 приложения, смотрите прикреплённый архив.

Спасибо.

Re: Не компилируются страницы с отчётами

Добавлено: 22 май 2013, 07:38
zmey
Здравствуйте,

Извиняюсь за задержку с ответом, не было времени вернуться к обкатке отчётов.

Спасибо за пример, он работает. Однако воспроизвести корректное поведение с своём проекте у меня не получается. Хоть убейте, не понимаю, чем отличается Ваш пример и как сделать, чтобы представления комплировались в моих проектах.

Спасибо.

Re: Не компилируются страницы с отчётами

Добавлено: 22 май 2013, 15:01
Vladimir
Здравствуйте,

Пожалуйста, сравните файлы Web.config проектов, в вашем случае не хватало следующего блока кода:

Код: Выделить всё

  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
Так же, в вашем случае на странице Index.cshtml необходимо добавить основные теги HTML и рендеринг скриптов вьювера:

Код: Выделить всё

@using Stimulsoft.Report.Mvc;

<html>
<head>
    @Html.Stimulsoft().RenderMvcViewerScripts()
</head>
<body>

@Html.Stimulsoft().StiMvcViewer(new StiMvcViewerOptions() {
                Theme = StiTheme.Office2010,
                ActionGetReportSnapshot = "GetReportSnapshotIEnumerable",
                ActionViewerEvent = "ViewerEvent",
                ActionPrintReport = "PrintReport",
                ActionExportReport = "ExportReport",
                ActionInteraction = "Interaction"
            })
</body>
</html>
Спасибо.

Re: Не компилируются страницы с отчётами

Добавлено: 24 май 2013, 06:39
zmey
Я сравнивал конфиги, и другие файлы тоже. Представления всё так же не компилируются.
Прилагаю проект, в котором я добавил указанный Вами код. Проект создавался как Empty.

Re: Не компилируются страницы с отчётами

Добавлено: 24 май 2013, 10:20
Vladimir
Здравствуйте,

Мы проверили ваш проект, и он запускается корректно.
Единственное, что было сделано:
1. Добавлены библиотеки Stimulsoft.Base, Stimulsoft.Report, Stimulsoft.Mvc версий 2013.1.1600
(после этого проект запустился, на странице отобразился тулбар вьювера)
2. В файле Index.cshtml скорректировано свойство ActionGetReportSnapshot = "GetReportSnapshotIEnumerable" на значение "IndexReport"
(после этого отчёт sample.mrt отобразился корректно)

Для тестирования использовалось Windows 7 x64 и Visual Studio 2010.

Попробуйте создать не Empty проект, а Basic, и удалить лишние файлы. Либо, если у вас есть уже свой большой проект, то создать новый Basic проект, и сравнить Web.config файлы.

Спасибо.

Re: Не компилируются страницы с отчётами

Добавлено: 30 май 2013, 11:34
zmey
В-общем, разобрался. Представления не компилируются тогда, когда либы Base, Report и Report.Mvc отсутствуют в каталоге bin\debug(release). Поэтому необходимо выставлять флажок CopyLocal - Allways. В создаваемых мной проектах флажок выставлялся в false, представления не компилировались. Так, если в Вашем проекте руками зачистить каталог bin, ошибка воспроизводится. При этом в коде контроллера проблем с компиляцией не возникает при любом значении флажка.

А уже после этого я столкнулся в ошибками, которые лечились добавлением в web.config секции runtime, как Вы писали ранее. Вываливались непонятные исключения ArgumentNullException и ArgumentOutOfRangeException при обращении к хелперу(RenderMvcViewerScripts() и StiMvcViewer() соответственно).

Тестировалось на Win8 x64 VS2010 R#7.

Re: Не компилируются страницы с отчётами

Добавлено: 31 май 2013, 18:01
HighAley
Здравствуйте.

Пошите, если возникнут ещё какие-либо вопросы.

Спасибо.