Поделиться через


Задание свойства Url для веб-службы

В приложениях Microsoft .NET Framework можно в любое время изменить базовый URL-адрес веб-службы сервера отчетов, на использование которой приложение настроено в настоящее время. Для этого необходимо просто задать свойство Url объекта службы. Например:

Dim rs As New ReportingService2010()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
rs.Url = "http://<Server Name>/reportserver/ReportService2010.asmx"
ReportingService2010 service = new ReportingService2010();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
rs.Url = "http://<Server Name>/reportserver/ReportService2010.asmx";

В следующем примере определение отчета считывается с одного сервера отчетов и используется для создания идентичного отчета на другом сервере отчетов.

Imports System
Imports System.Web.Services.Protocols

Class Sample
   Public Shared Sub Main()
      Dim rs As New ReportingService2010()
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials
      ' Set the base Web service URL of the source server
      rs.Url = "http://<Server Name>/reportserver/ReportService2010.asmx"

      Dim reportName As String = "/SampleReports/Company Sales"
      Dim reportDefinition As Byte() = Nothing

      Try
         ' Get the report definition of a report on a source server
         reportDefinition = rs.GetItemDefinition(reportName)
         ' Set the base Web service URL of the destination server
         rs.Url = "http://<Server Name>/reportserver/ReportService2010.asmx"
         ' Create a copy of the report on the destination server
         Dim warnings As Warning() = {}
         rs.CreateCatalogItem("Report", "Company Sales Copy", "/", False, reportDefinition, Nothing, warnings)      
      Catch e As SoapException
         Console.WriteLine(e.Detail.InnerXml.ToString())
      End Try
   End Sub 'Main
End Class 'Sample
using System;
using System.Web.Services.Protocols;

class Sample
{
   public static void Main()
   {
      ReportingService2010 rs = new ReportingService2010();
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
      // Set the base Web service URL of the source server
      rs.Url = "http://<Server Name>/reportserver/reportservice2010.asmx";

      string reportName = "/SampleReports/Company Sales";
      byte[] reportDefinition = null;

      try
      {
         reportDefinition = rs.GetItemDefinition(reportName);
         // Set the base Web service URL of the destination server
         rs.Url = "http://<Server Name>/reportserver/ReportService2010.asmx";
         // Create a copy of the report on the destination server
         Warning[] warnings = {};
         rs.CreateCatalogItem("Report", "Company Sales Copy", "/", false, reportDefinition, null, out warnings);
      }

      catch (SoapException e)
      {
         Console.WriteLine(e.Detail.InnerXml.ToString()); 
      }
   }
}

Дополнительные сведения о создании исходного класса-посредника для веб-службы см. в разделе Создание учетной записи-посредника веб-службы.

См. также

Справочник

CreateCatalogItem

GetItemDefinition

Основные понятия

Веб-служба сервера отчетов

Другие ресурсы

Построение приложений с помощью веб-службы и платформы .NET Framework