Search Results for

    Show / Hide Table of Contents

    Создание веб-сервиса на основе FastReport.Service.dll

    Можно очень просто реализовать веб-сервис, используя библиотеку FastReport.Service.dll (WCF Service Library), которая поставляется совместно с FastReport.

    Пример основан на создании простейшего веб-приложения с функциями веб-сервиса с нуля, но так же можно доработать уже существующий ваш проект – главное, чтобы он работал под управлением .NET Framework 4.6.2 или более новым.

    Запускаем Visual Studio и создаем новый проект ASP.NET Web Application под .NET Framework 4.6.2 или выше.

    Добавляем ссылки на библиотеки FastReport.dll, FastReport.Bars.dll, FastReport.Service.dll.

    Создаем текстовый файл с именем ReportService.svc в корне сайта.

    Добавляем следующие строки в созданный файл:

    <%@ ServiceHost Service="FastReport.Service.ReportService" %>
    <%@ Assembly Name="FastReport.Service" %>
    

    Открываем файл web.config и добавляем следующие секции в секцию <configuration>:

    <appSettings>
     <!-- path to folder with reports -->
     <add key="FastReport.ReportsPath" value="C:\Program files\FastReports\FastReport .NET Professional\Demos\Reports" />
     <!-- name of connection string for reports -->
     <add key="FastReport.ConnectionStringName" value="FastReportDemo" />
     <!-- Comma-separated list of available formats PDF,DOCX,XLSX,PPTX,RTF,ODS,ODT,MHT,CSV,DBF,XML,TXT,FPX. 
     You can delete any or change order in this list. -->
     <add key="FastReport.Gear" value="PDF,DOCX,XLSX,PPTX,RTF,ODS,ODT,MHT,CSV,DBF,XML,TXT,FPX" />
     </appSettings>
     <connectionStrings>
     <add name="FastReportDemo" connectionString="XsdFile=;XmlFile=C:\Program Files\FastReports\FastReport .NET Professional\Demos\Reports\nwind.xml"/>
     </connectionStrings>
     <system.serviceModel>
     <services>
     <service behaviorConfiguration="FastReportServiceBehavior" name="FastReport.Service.ReportService">
     <endpoint address="" binding="wsHttpBinding" contract="FastReport.Service.IFastReportService">
     <identity>
     <dns value="localhost" />
     </identity>
     </endpoint>
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
     </service>
     </services>
     <behaviors>
     <serviceBehaviors>
     <behavior name="FastReportServiceBehavior">
     <serviceMetadata httpGetEnabled="True" />
     <serviceDebug includeExceptionDetailInFaults="True" />
     </behavior>
     </serviceBehaviors>
     </behaviors>
     <bindings>
     <basicHttpBinding>
     <binding messageEncoding="Mtom"
     closeTimeout="00:02:00" openTimeout="00:02:00"
     receiveTimeout="00:10:00" sendTimeout="00:02:00"
     maxReceivedMessageSize="67108864" maxBufferSize="65536"
     transferMode="Streamed">
     <security mode="None">
     <transport clientCredentialType="None" />
     </security>
     </binding>
     </basicHttpBinding>
     </bindings>
     </system.serviceModel>
    

    Параметр FastReport.ReportsPath должен указывать на папку с отчетами – для примера можно указать папку с примерами отчетов: \Demos\Reports.

    Параметр FastReport.ConnectionStringName содержит название строки подключения к базе данных. Эта строка должна быть прописана в секции <connectionStrings>.

    Запускаем сайт на исполнение и проверяем доступность веб-сервиса обратившись к файлу ReportService.svc, который размещен на сайте.

    При размещении проекта на сервере не забудьте проверить наличие файлов FastReport.dll, FastReport.Bars.dll, FastReport.Service.dll в папке \bin.

    Пример клиентской программы находится в папке \Demos\C#\Web\WCFWebClient. В этом примере необходимо выполнить настройку Service References, нажав правой кнопкой мыши на ReportService в Visual Studio и выбрав пункт меню Configure Service Reference.

    В открывшемся окне укажите адрес работающего веб-сервиса.

    Back to top © 1998-2025 Copyright ООО «Быстрые отчеты»