語言

ReportingService2010.CreateRole(String, String, String[]) 方法

定義

為回報伺服器資料庫新增一個角色。 此方法僅適用於原生模式。

public:
 void CreateRole(System::String ^ Name, System::String ^ Description, cli::array <System::String ^> ^ TaskIDs);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateRole", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
[System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)]
[System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")]
public void CreateRole(string Name, string Description, string[] TaskIDs);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateRole", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)>]
[<System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)>]
[<System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")>]
member this.CreateRole : string * string * string[] -> unit
Public Sub CreateRole (Name As String, Description As String, TaskIDs As String())

參數

Name
String

新角色的名字。 此參數的值必須介於 1 到 260 字元之間。

Description
String

新角色的描述。 此參數的值必須介於 1 到 512 字元之間。

TaskIDs
String[]

一組任務 ID 陣列,代表該角色需設定的任務。

屬性

範例

要編譯此程式碼範例,您必須參考 Reporting Services WSDL 並匯入特定命名空間。 欲了解更多資訊,請參閱編 譯與執行程式碼範例。 以下程式碼範例使用此 CreateRole 方法建立具有存取資料夾與報告權限的使用者角色:

Imports System  
Imports System.Web.Services.Protocols  

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

      Try   
         Dim name As String = "Report Browser"   
         Dim desc As String = "View folders and reports."   

         Dim tasks As Task() = rs.ListTasks("All")    
         Dim taskIDs As New List(Of String)()    

         For Each t As Task In tasks    
            taskIDs.Add(t.TaskID)    
         Next   

         rs.CreateRole(name, desc, taskIDs.ToArray())  
      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;  

      try  
      {  
         string name = "Report Browser";  
       string desc = "View folders and reports.";  

         Task[] tasks = rs.ListTasks("All");  
         List<string> taskIDs = new List<string>();  

         foreach (Task t in tasks)  
         {  
            taskIDs.Add(t.TaskID);  
         }  

         rs.CreateRole(name, desc, taskIDs.ToArray());  
      }  
      catch (SoapException e)  
      {  
         Console.WriteLine(e.Detail.InnerXml.ToString());  
      }  
  }  
}  

備註

下表顯示此操作的標頭與權限資訊。

SOAP 標頭的使用 (在) TrustedUserHeaderValue

(出局) ServerInfoHeaderValue
原生模式所需權限 CreateRoles (系統)
SharePoint 模式 必要權限 不支援

此方法在 SharePont 模式下呼叫時會 OperationNotSupportedSharePointMode 拋出例外。

Name和Description參數是必須的,且不應設定為null(Nothing在 Visual Basic 中)。 的 Name 值必須是唯一的。

你必須至少指派一項任務給該職位。 你無法在同一角色中同時執行系統層級和項目層級任務。 欲了解更多任務資訊,請參閱 任務與權限。

適用於