CreateRole 方法
將新角色加入至報表伺服器資料庫。這個方法只適用於原生模式。
命名空間: ReportService2010
組件: ReportService2010 (在 ReportService2010.dll 中)
語法
'宣告
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateRole", RequestNamespace := "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", _
ResponseNamespace := "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", _
Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
<SoapHeaderAttribute("ServerInfoHeaderValue", Direction := SoapHeaderDirection.Out)> _
<SoapHeaderAttribute("TrustedUserHeaderValue")> _
Public Sub CreateRole ( _
Name As String, _
Description As String, _
TaskIDs As String() _
)
'用途
Dim instance As ReportingService2010
Dim Name As String
Dim Description As String
Dim TaskIDs As String()
instance.CreateRole(Name, Description, _
TaskIDs)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateRole", RequestNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
ResponseNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
[SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)]
[SoapHeaderAttribute("TrustedUserHeaderValue")]
public void CreateRole(
string Name,
string Description,
string[] TaskIDs
)
[SoapDocumentMethodAttribute(L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateRole", RequestNamespace = L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
ResponseNamespace = L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
Use = SoapBindingUse::Literal, ParameterStyle = SoapParameterStyle::Wrapped)]
[SoapHeaderAttribute(L"ServerInfoHeaderValue", Direction = SoapHeaderDirection::Out)]
[SoapHeaderAttribute(L"TrustedUserHeaderValue")]
public:
void CreateRole(
String^ Name,
String^ Description,
array<String^>^ TaskIDs
)
[<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/CreateRole", RequestNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
ResponseNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)>]
[<SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)>]
[<SoapHeaderAttribute("TrustedUserHeaderValue")>]
member CreateRole :
Name:string *
Description:string *
TaskIDs:string[] -> unit
public function CreateRole(
Name : String,
Description : String,
TaskIDs : String[]
)
參數
- Name
型別:System. . :: . .String
新角色的名稱。這個參數的值長度必須介於 1 到 260 個字元之間。
- Description
型別:System. . :: . .String
新角色的描述。這個參數的值長度必須介於 1 到 512 個字元之間。
- TaskIDs
型別:array<System. . :: . .String> [] () [] []
工作識別碼的陣列,表示要為角色設定的工作。
備註
The table below shows header and permissions information on this operation.
SOAP Header Usage |
(Out) ServerInfoHeaderValue |
Native Mode Required Permissions |
CreateRoles (System) |
SharePoint Mode Required Permissions |
Not supported |
This method throws an OperationNotSupportedSharePointMode exception when invoked in SharePont mode.
The Name and Description parameters are required and should not be set to null Nothing nullptr unit null 參考 (在 Visual Basic 中為 Nothing) (Nothing in Visual Basic). The value for Name must be unique.
You must assign at least one task to the role. You cannot combine system-level and item-level tasks within a single role. For more information about tasks, see 工作和權限.
範例
To compile this code example, you must reference the Reporting Services WSDL and import certain namespaces. For more information, see Compiling and Running Code Examples. The following code example uses the CreateRole method to create a user role that has permissions to view folders and reports:
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());
}
}
}