SoapDocumentMethodAttribute クラス
アセンブリ: System.Web.Services (system.web.services.dll 内)

<AttributeUsageAttribute(AttributeTargets.Method)> _ Public NotInheritable Class SoapDocumentMethodAttribute Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Method)] public sealed class SoapDocumentMethodAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Method)] public ref class SoapDocumentMethodAttribute sealed : public Attribute

Web サービス記述言語 (WSDL: Web Services Description Language) では、操作を呼び出す XML Web サービス メソッドの SOAP メッセージ内における書式として、RPC と Document の 2 つのスタイルを定義しています。Document は、XSD スキーマに従った XML Web サービス メソッドの書式を指定します。Document スタイルは、Body 要素を、Body 要素の後に続く 1 つ以上の連続するメッセージ部分として書式指定することを表します。個別のメッセージ部分の詳細については、Use プロパティと ParameterStyle プロパティを使用して指定します。Use プロパティは、パラメータの書式として Encoded またはLiteral のいずれかを指定します。ParameterStyle は、パラメータを Body 要素の後に続く単一のメッセージ部分にカプセル化するかどうか、または各パラメータを独立したメッセージ部分とするかどうかを指定します。
詳細については、「SOAP メッセージ形式のカスタマイズ」を参照してください。
この属性は、サーバー上の XML Web サービス メソッドと、クライアント上のプロキシ クラスのメソッドの両方に適用できます。

GetUserName XML Web サービス メソッドに対して、メッセージ スタイルを Document に設定するコード例を次に示します。また、SOAP 要求と SOAP 応答の Body 要素に関連付けられている XML 要素として、それぞれ GetUserNameRequest と GetUserNameResponse が設定されています。
<%@ WebService Language="VB" class="MyUser" %> Imports System Imports System.Web.Services Imports System.Web.Services.Protocols Public Class MyUser Inherits WebService <SoapDocumentMethod(Action := "http://www.contoso.com/Sample", _ RequestNamespace := "http://www.contoso.com/Request", _ RequestElementName := "GetUserNameRequest", _ ResponseNamespace := "http://www.contoso.com/Response", _ ResponseElementName := "GetUserNameResponse"), _ WebMethod(Description := "Obtains the User Name")> _ Public Function GetUserName() As UserName Dim temp As String Dim pos As Integer Dim NewUser As New UserName() ' Get the full user name, including the domain name if applicable. temp = User.Identity.Name ' Deterime whether the user is part of a Domain by searching for a backslash. pos = temp.IndexOf("\") ' Parse the domain name out of the string, if one exists. If pos <= 0 Then NewUser.Name = User.Identity.Name Else NewUser.Name = temp.Remove(0, pos + 1) NewUser.Domain = temp.Remove(pos, temp.Length - pos) End If Return NewUser End Function End Class Public Class UserName Public Name As String Public Domain As String End Class
<%@ WebService Language="C#" class="MyUser" %> using System; using System.Web.Services; using System.Web.Services.Protocols; public class MyUser : WebService { [ SoapDocumentMethod(Action="http://www.contoso.com/Sample", RequestNamespace="http://www.contoso.com/Request" , RequestElementName="GetUserNameRequest", ResponseNamespace="http://www.contoso.com/Response" , ResponseElementName="GetUserNameResponse")] [ WebMethod(Description="Obtains the User Name") ] public UserName GetUserName() { string temp; int pos; UserName NewUser = new UserName(); // Get the full user name, including the domain name if applicable. temp = User.Identity.Name; // Deterime whether the user is part of a domain by searching for a backslash. pos = temp.IndexOf("\\"); // Parse the domain name out of the string, if one exists. if (pos <= 0) NewUser.Name = User.Identity.Name; else { NewUser.Name = temp.Remove(0,pos+1); NewUser.Domain = temp.Remove(pos,temp.Length-pos); } return NewUser; } } public class UserName { public string Name; public string Domain; }

System.Attribute
System.Web.Services.Protocols.SoapDocumentMethodAttribute


Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からSoapDocumentMethodAttribute クラスを検索する場合は、下記のリンクをクリックしてください。

- SoapDocumentMethodAttribute クラスのページへのリンク