ReportingService2005.SetDataSourceContents 메서드

정의

데이터 원본의 내용을 설정합니다.

public:
 void SetDataSourceContents(System::String ^ DataSource, ReportService2005::DataSourceDefinition ^ Definition);
public void SetDataSourceContents (string DataSource, ReportService2005.DataSourceDefinition Definition);
member this.SetDataSourceContents : string * ReportService2005.DataSourceDefinition -> unit
Public Sub SetDataSourceContents (DataSource As String, Definition As DataSourceDefinition)

매개 변수

DataSource
String

데이터 원본의 전체 경로 이름입니다.

Definition
DataSourceDefinition

데이터 원본에 대한 정의를 포함하는 DataSourceDefinition 개체입니다.

예제

다음 코드 예제를 컴파일하려면 Reporting Services WSDL을 참조하고 특정 네임스페이스를 가져와야 합니다. 자세한 내용은 코드 예제 컴파일 및 실행을 참조하세요. 다음 예제 코드에서는 메서드를 SetDataSourceContents 사용하여 "AdventureWorks"라는 기존 데이터 원본에 대한 데이터 원본 정의를 설정합니다.

Imports System  
Imports System.Web.Services.Protocols  

Class Sample  
   Public Shared Sub Main()  
      Dim rs As New ReportingService2005()  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials  

      Dim definition As New DataSourceDefinition()  
      definition.CredentialRetrieval = CredentialRetrievalEnum.Integrated  
      definition.ConnectString = "data source=(local);initial catalog=AdventureWorks2000"  
      definition.Enabled = True  
      definition.EnabledSpecified = True  
      definition.Extension = "SQL"  
      definition.ImpersonateUser = False  
      definition.ImpersonateUserSpecified = True  
      definition.Prompt = Nothing  
      definition.WindowsCredentials = False  

      Try  
         rs.SetDataSourceContents("/SampleReports/AdventureWorks", definition)  

      Catch e As SoapException  
         Console.WriteLine(e.Detail.OuterXml)  
      End Try  
   End Sub 'Main  
End Class 'Sample  
using System;  
using System.Web.Services.Protocols;  

class Sample  
{  
   public static void Main()  
   {  
      ReportingService2005 rs = new ReportingService2005();  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;  

      DataSourceDefinition definition = new DataSourceDefinition();  
      definition.CredentialRetrieval = CredentialRetrievalEnum.Integrated;  
      definition.ConnectString = "data source=(local);initial catalog=AdventureWorks2000";  
      definition.Enabled = true;  
      definition.EnabledSpecified = true;  
      definition.Extension = "SQL";  
      definition.ImpersonateUser = false;  
      definition.ImpersonateUserSpecified = true;  
      definition.Prompt = null;  
      definition.WindowsCredentials = false;  

      try  
      {  
         rs.SetDataSourceContents( "/SampleReports/AdventureWorks", definition );  
      }  

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

설명

다음 표에서는 이 작업에 대한 헤더 및 사용 권한 정보를 보여 줍니다.

SOAP 헤더 (In) BatchHeaderValue

(Out) ServerInfoHeaderValue
필요한 권한 UpdateContent

데이터 원본 정의의 일부인 속성을 제거하려면 해당 속성 null 의 값을 (Nothing Visual Basic의 경우)로 설정합니다.

데이터 원본 정의의 속성을 또는 로 설정 CredentialRetrieval 하면 또는 PromptPassword에 대한 UserName 값을 제공하지 Integrated 않습니다. 이렇게 하면 오류 코드 rsInvalidElementCombination가 있는 SOAP 예외가 발생합니다.

데이터 원본 정의의 속성을 또는 StoreIntegrated 설정 CredentialRetrieval 하면 속성에 제공하는 Prompt 모든 값이 저장되지 않습니다.

구독을 사용하면 구독이 무인으로 실행될 수 있도록 보고서 서버 데이터베이스에 자격 증명을 저장해야 할 수 있습니다.

ConnectionString 데이터 원본 정의 null 의 속성을 (Visual Basic의 경우)로Nothing 설정하면 오류 코드rsInvalidXML가 있는 SOAP 예외가 발생합니다. 에 값을 ConnectionString제공하지 않으려면 해당 값을 빈 문자열("")로 설정합니다.

적용 대상