次の方法で共有


Dws.CanCreateDwsUrl メソッド (websvcDocumentWorkspace)

サーバー上に指定された URL でドキュメント ワークスペース サイトを作成するための適切な権限をユーザーが持っているかどうかを決定します。

名前空間: websvcDocumentWorkspace
アセンブリ: STSSOAP (stssoap.dll 内)

構文

'宣言
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sharepoint/soap/dws/CanCreateDwsUrl", RequestNamespace:="https://schemas.microsoft.com/sharepoint/soap/dws/", ResponseNamespace:="https://schemas.microsoft.com/sharepoint/soap/dws/", Use:=SoapBindingUse.Literal, ParameterStyle:=SoapParameterStyle.Wrapped)> _
Public Function CanCreateDwsUrl ( _
    url As String _
) As String
'使用
Dim instance As Dws
Dim url As String
Dim returnValue As String

returnValue = instance.CanCreateDwsUrl(url)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sharepoint/soap/dws/CanCreateDwsUrl", RequestNamespace="https://schemas.microsoft.com/sharepoint/soap/dws/", ResponseNamespace="https://schemas.microsoft.com/sharepoint/soap/dws/", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Wrapped)] 
public string CanCreateDwsUrl (
    string url
)

パラメータ

  • url
    String。新しいドキュメント ワークスペース サイト用に指定された URL。

戻り値

成功した場合は、<Result>{proposed URL}</Result> の形式で URL を返す文字列。

メモメモ :

この URL は、「Remarks」の説明に従って変更される場合があります。

例外

例外の種類 条件

HTTP error code 401

ユーザーは適切な権限を持っていません。

備考

CanCreateDwsUrl メソッドは、サーバー上に指定された URL でドキュメント ワークスペース サイトを作成するための適切な権限をユーザーが持っているかどうかを決定します。このメソッドは、無効な文字を置き換え、必要に応じて指定された URL を短くし、数値インデックスを末尾に追加して URL を一意にした後、指定された URL を返します。たとえば、指定された URL My_New_Site が既に存在する場合、CanCreateDwsUrl メソッドは My_New_Site(1) を返します。

ユーザーが適切な権限を持っていない場合、HTTP エラー応答は例外をスローします。

以下のコード例では、CanCreateDwsUrl メソッドによって返された、新しいドキュメント ワークスペース サイト用に指定された URL を表示します。

Try
    Dim strResult As String
    strResult = dwsWebService.CanCreateDwsUrl("site_name")
    Console.WriteLine("Result of CanCreate operation: {0}", strResult)
    If IsDwsErrorResult(strResult) Then
        Dim intErrorID As Integer
        Dim strErrorMsg As String
        Call ParseDwsErrorResult(strResult, intErrorID, strErrorMsg)
        MessageBox.Show("A document workspace error occurred." & vbCrLf & _
            "Error number: " & intErrorID.ToString & vbCrLf & _
            "Error description:" & strErrorMsg, _
            "DWS Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
    Else
        Dim strSuggestedUrl As String
        strSuggestedUrl = ParseDwsSingleResult(strResult)
        MessageBox.Show("User has permission to create: " & _
            vbCrLf & strSuggestedUrl, _
            "CanCreateDwsUrl", MessageBoxButtons.OK, _
            MessageBoxIcon.Information)
    End If
Catch exc As Exception
    MessageBox.Show("An exception occurred." & vbCrLf & _
        "Description: " & exc.Message, _
        "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
try
{
    string strResult = "";
    strResult = dwsWebService.CanCreateDwsUrl("site_name");
    if (IsDwsErrorResult(strResult))
    {
        int intErrorID  = 0;
        string strErrorMsg = "";
        ParseDwsErrorResult(strResult, out intErrorID, out strErrorMsg);
        MessageBox.Show
            ("A document workspace error occurred.\r\n" +
            "Error number: " + intErrorID.ToString() + "\r\n" +
            "Error description: " + strErrorMsg,
            "DWS Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
    }
    else
    {
        string strSuggestedUrl = ParseDwsSingleResult(strResult);
        MessageBox.Show
            ("User has permission to create: \r\n" +
            strSuggestedUrl,
            "Create DWS", MessageBoxButtons.OK,
            MessageBoxIcon.Information);
    }
}
catch (Exception exc)
{
    MessageBox.Show("An exception occurred.\r\n" +
        "Description: " + exc.Message,
        "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error);
}

以下のヘルパ関数の例は、Document Workspace サービスの各メソッド用に提供されたコード例で使用されます。

    Private Function IsDwsErrorResult(ByVal ResultFragment As String) 
        As Boolean
        Dim srResult As System.IO.StringReader = 
            New System.IO.StringReader(ResultFragment)
        Dim xtr As System.Xml.XmlTextReader = 
            New System.Xml.XmlTextReader(srResult)
        xtr.Read()
        If xtr.Name = "Error" Then
            Return True
        Else
            Return False
        End If
    End Function

    Private Sub ParseDwsErrorResult(ByVal ErrorFragment As String, 
        ByRef ErrorID As Integer, ByRef ErrorMsg As String)
        Dim srError As System.IO.StringReader = 
            New System.IO.StringReader(ErrorFragment)
        Dim xtr As System.Xml.XmlTextReader = 
            New System.Xml.XmlTextReader(srError)
        xtr.Read()
        xtr.MoveToAttribute("ID")
        xtr.ReadAttributeValue()
        ErrorID = xtr.Value
        ErrorMsg = xtr.ReadString()
    End Sub

    Private Function ParseDwsSingleResult(ByVal ResultFragment 
        As String) As String
        Dim srResult As System.IO.StringReader = 
            New System.IO.StringReader(ResultFragment)
        Dim xtr As System.Xml.XmlTextReader = 
            New System.Xml.XmlTextReader(srResult)
        xtr.Read()
        Return xtr.ReadString()
    End Function
private bool IsDwsErrorResult(string ResultFragment)
{
    System.IO.StringReader srResult = 
        new System.IO.StringReader(ResultFragment);
    System.Xml.XmlTextReader xtr = 
        new System.Xml.XmlTextReader(srResult);
    xtr.Read();
    if (xtr.Name == "Error")
    {
        return true;
    }
    else
    {
        return false;
    }
}

private void ParseDwsErrorResult(string ErrorFragment, out int ErrorID, 
    out string ErrorMsg)
{
    System.IO.StringReader srError = 
        new System.IO.StringReader(ErrorFragment);
    System.Xml.XmlTextReader xtr = 
        new System.Xml.XmlTextReader(srError);
    xtr.Read();
    xtr.MoveToAttribute("ID");
    xtr.ReadAttributeValue();
    ErrorID = System.Convert.ToInt32(xtr.Value);
    ErrorMsg = xtr.ReadString();
}

private string ParseDwsSingleResult(string ResultFragment)
{
    System.IO.StringReader srResult = 
        new System.IO.StringReader(ResultFragment);
    System.Xml.XmlTextReader xtr = 
        new System.Xml.XmlTextReader(srResult);
    xtr.Read();
    return xtr.ReadString();            
}

関連項目

参照

Dws クラス
Dws メンバ
websvcDocumentWorkspace 名前空間