SoapRpcMethodAttribute Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee geeft u op dat SOAP-berichten die naar en van de methode worden verzonden, opmaak gebruiken RPC .
public ref class SoapRpcMethodAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class SoapRpcMethodAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method)>]
type SoapRpcMethodAttribute = class
inherit Attribute
Public NotInheritable Class SoapRpcMethodAttribute
Inherits Attribute
- Overname
- Kenmerken
Voorbeelden
In het volgende codevoorbeeld wordt de berichtstijl Rpc voor de GetUserName XML-webservicemethode ingesteld.
<%@ WebService Language="C#" class="MyUser" %>
using System;
using System.Web.Services;
using System.Web.Services.Protocols;
public class MyUser : WebService {
[ SoapRpcMethod(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;
// Determine whether the user is part of a domain by searching for a backslash.
pos = temp.IndexOf("\\");
// Parse out the domain name from 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;
}
<%@ WebService Language="VB" class="MyUser" %>
Imports System
Imports System.Web.Services
Imports System.Web.Services.Protocols
Public Class MyUser
Inherits WebService
<SoapRpcMethod(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
' Determine whether the user is part of a domain by searching for a backslash.
pos = temp.IndexOf("\")
' Parse out the domain name from 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
Opmerkingen
WSDL (Web Services Description Language) definieert twee stijlen voor de manier waarop een XML-webservicemethode of -bewerking kan worden opgemaakt in een SOAP-bericht: RPC en Document.
RPC opmaak verwijst naar het opmaken van de bewerking volgens de SOAP-specificatie voor het gebruik van SOAP voor RPC; ook wel sectie 7 van de SOAP-specificatie genoemd.
RPC met opmaak wordt aangegeven dat alle parameters zijn ingekapseld binnen één XML-element dat is genoemd na de XML-webservicemethode en dat elk XML-element in dat XML-element een parameter vertegenwoordigt die is genoemd naar de parameter die deze vertegenwoordigt.
SOAP-berichten die zijn opgemaakt in zowel de als Document de RPC stijlen kunnen worden gebruikt om te communiceren met een XML-webservice op een RPC-manier (Remote Procedure Call). De Document stijl kan echter ook eenvoudig worden gebruikt om op een losjes gekoppelde manier te communiceren.
Document Daarom wordt xml-webservices in stijl aanbevolen. Zie het Customizing SOAP Messages onderwerp voor meer informatie.
Zie SOAP-berichtopmaak aanpassen voor meer informatie.
Dit kenmerk kan worden toegepast op een XML-webservicemethode op de server en een proxyklasse op de client. XML-webservicemethoden waarvoor de OneWay eigenschap is ingesteld, true hebben geen toegang tot hun HttpContext. Als zodanig, toegang tot een van de eigenschappen van de WebService klasse retourneren null.
Constructors
| Name | Description |
|---|---|
| SoapRpcMethodAttribute() |
Initialiseert een nieuw exemplaar van de SoapRpcMethodAttribute klasse en stelt alle eigenschappen in op de standaardwaarden. |
| SoapRpcMethodAttribute(String) |
Initialiseert een nieuw exemplaar van de SoapRpcMethodAttribute klasse, waarbij de Action eigenschap wordt ingesteld op de waarde van de |
Eigenschappen
| Name | Description |
|---|---|
| Action |
Hiermee haalt u het |
| Binding |
Haalt de binding op waarvoor een XML-webservicemethode een bewerking implementeert of stelt deze in. |
| OneWay |
Hiermee haalt u op of stelt u in of een XML-webserviceclient wacht totdat de webserver klaar is met het verwerken van een XML-webservicemethode. |
| RequestElementName |
Hiermee haalt u het XML-element op dat is gekoppeld aan de SOAP-aanvraag voor een XML-webservicemethode. |
| RequestNamespace |
Hiermee wordt de XML-naamruimte opgehaald of ingesteld die is gekoppeld aan de SOAP-aanvraag voor een XML-webservicemethode. |
| ResponseElementName |
Hiermee haalt u het XML-element op dat is gekoppeld aan het SOAP-antwoord voor een XML-webservicemethode. |
| ResponseNamespace |
Hiermee haalt u de XML-naamruimte op die is gekoppeld aan het SOAP-antwoord voor een XML-webservicemethode. |
| TypeId |
Wanneer deze wordt geïmplementeerd in een afgeleide klasse, krijgt u Attributehiervoor een unieke id. (Overgenomen van Attribute) |
| Use |
Hiermee haalt u de binding op die wordt gebruikt bij het aanroepen van de methode. |
Methoden
| Name | Description |
|---|---|
| Equals(Object) |
Retourneert een waarde die aangeeft of dit exemplaar gelijk is aan een opgegeven object. (Overgenomen van Attribute) |
| GetHashCode() |
Retourneert de hash-code voor dit exemplaar. (Overgenomen van Attribute) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| IsDefaultAttribute() |
Wanneer deze wordt overschreven in een afgeleide klasse, geeft u aan of de waarde van dit exemplaar de standaardwaarde is voor de afgeleide klasse. (Overgenomen van Attribute) |
| Match(Object) |
Wanneer deze wordt overschreven in een afgeleide klasse, wordt een waarde geretourneerd die aangeeft of dit exemplaar gelijk is aan een opgegeven object. (Overgenomen van Attribute) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Hiermee wordt een set namen toegewezen aan een bijbehorende set verzend-id's. (Overgenomen van Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Hiermee haalt u de typegegevens voor een object op, die kan worden gebruikt om de typegegevens voor een interface op te halen. (Overgenomen van Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Hiermee wordt het aantal type-informatieinterfaces opgehaald dat een object biedt (0 of 1). (Overgenomen van Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Biedt toegang tot eigenschappen en methoden die door een object worden weergegeven. (Overgenomen van Attribute) |