SoapMethodAttribute Classe
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Personalizza i processi di generazione ed elaborazione SOAP di un metodo. La classe non può essere ereditata.
public ref class SoapMethodAttribute sealed : System::Runtime::Remoting::Metadata::SoapAttribute
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class SoapMethodAttribute : System.Runtime.Remoting.Metadata.SoapAttribute
[System.AttributeUsage(System.AttributeTargets.Method)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class SoapMethodAttribute : System.Runtime.Remoting.Metadata.SoapAttribute
[<System.AttributeUsage(System.AttributeTargets.Method)>]
type SoapMethodAttribute = class
inherit SoapAttribute
[<System.AttributeUsage(System.AttributeTargets.Method)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SoapMethodAttribute = class
inherit SoapAttribute
Public NotInheritable Class SoapMethodAttribute
Inherits SoapAttribute
- Ereditarietà
- Attributi
Nell'esempio di codice seguente viene illustrato come usare i membri della classe per personalizzare la generazione e l'elaborazione SoapMethodAttribute SOAP per un metodo.
#using <System.dll>
#using <System.Runtime.Remoting.dll>
using namespace System;
using namespace System::Runtime::Remoting::Metadata;
namespace ExampleNamespace
{
public ref class ExampleClass
{
public:
[SoapMethod(
ResponseXmlElementName="ExampleResponseElement",
ResponseXmlNamespace=
"http://example.org/MethodResponseXmlNamespace",
ReturnXmlElementName="HelloMessage",
SoapAction="http://example.org/ExampleSoapAction#GetHello",
XmlNamespace="http://example.org/MethodCallXmlNamespace")]
String^ GetHello( String^ name )
{
return String::Format( L"Hello, {0}", name );
}
};
}
int main()
{
// Get the method info object for the GetHello method.
System::Reflection::MethodBase^ getHelloMethod =
ExampleNamespace::ExampleClass::typeid->GetMethod( L"GetHello" );
// Print the XML namespace for the invocation of this method.
String^ methodCallXmlNamespace =
System::Runtime::Remoting::SoapServices::GetXmlNamespaceForMethodCall(
getHelloMethod );
Console::WriteLine( L"The XML namespace for the response of the method "
L"GetHello in ExampleClass is {0}.", methodCallXmlNamespace );
// Print the XML namespace for the response of this method.
String^ methodResponseXmlNamespace =
System::Runtime::Remoting::SoapServices::GetXmlNamespaceForMethodCall(
getHelloMethod );
Console::WriteLine( L"The XML namespace for the invocation of the method "
L"GetHello in ExampleClass is {0}.", methodResponseXmlNamespace );
// Print the SOAP action for this method.
String^ getHelloSoapAction =
System::Runtime::Remoting::SoapServices::GetXmlNamespaceForMethodCall(
getHelloMethod );
Console::WriteLine( L"The SOAP action for the method "
L"GetHello in ExampleClass is {0}.", getHelloSoapAction );
}
using System;
using System.Runtime.Remoting.Metadata;
namespace ExampleNamespace
{
public class ExampleClass
{
[SoapMethod(
ResponseXmlElementName="ExampleResponseElement",
ResponseXmlNamespace=
"http://example.org/MethodResponseXmlNamespace",
ReturnXmlElementName="HelloMessage",
SoapAction="http://example.org/ExampleSoapAction#GetHello",
XmlNamespace="http://example.org/MethodCallXmlNamespace")]
public string GetHello(string name)
{
return "Hello, " + name;
}
}
}
public class Demo
{
public static void Main(string[] args)
{
// Get the method info object for the GetHello method.
System.Reflection.MethodBase getHelloMethod =
typeof(ExampleNamespace.ExampleClass).GetMethod("GetHello");
// Print the XML namespace for the invocation of this method.
string methodCallXmlNamespace =
System.Runtime.Remoting.SoapServices.
GetXmlNamespaceForMethodCall(getHelloMethod);
Console.WriteLine(
"The XML namespace for the response of the method " +
"GetHello in ExampleClass is {0}.",
methodCallXmlNamespace);
// Print the XML namespace for the response of this method.
string methodResponseXmlNamespace =
System.Runtime.Remoting.SoapServices.
GetXmlNamespaceForMethodResponse(getHelloMethod);
Console.WriteLine(
"The XML namespace for the invocation of the method " +
"GetHello in ExampleClass is {0}.",
methodResponseXmlNamespace);
// Print the SOAP action for this method.
string getHelloSoapAction =
System.Runtime.Remoting.SoapServices.
GetSoapActionFromMethodBase(getHelloMethod);
Console.WriteLine(
"The SOAP action for the method " +
"GetHello in ExampleClass is {0}.",
getHelloSoapAction);
}
}
Gli oggetti di destinazione per l'attributo SoapMethodAttribute sono metodi che possono essere richiamati in remoto. Applicare per personalizzare la generazione e l'elaborazione SoapMethodAttribute SOAP. Le proprietà di questo attributo consentono al programmatore di personalizzare il campo di intestazione HTTP SOAPAction per indicare la finalità della richiesta HTTP SOAP.
Soap |
Crea un'istanza di SoapMethodAttribute. |
Prot |
Spazio dei nomi XML utilizzato per la serializzazione della destinazione dell'attributo SOAP corrente. (Ereditato da SoapAttribute) |
Reflect |
Oggetto reflection utilizzato dalle classi di attributi derivate dalla classe SoapAttribute per impostare le informazioni di serializzazione XML. (Ereditato da SoapAttribute) |
Embedded |
Ottiene o imposta un valore che indica se il tipo deve essere annidato durante la serializzazione SOAP. (Ereditato da SoapAttribute) |
Response |
Ottiene o imposta il nome dell'elemento XML da utilizzare per la risposta tramite metodo al metodo di destinazione. |
Response |
Ottiene o imposta lo spazio dei nomi dell'elemento XML usato per la risposta tramite metodo al metodo di destinazione. |
Return |
Ottiene o imposta il nome dell'elemento XML utilizzato per il valore restituito dal metodo di destinazione. |
Soap |
Ottiene o imposta il campo di intestazione SOAPAction utilizzato con le richieste HTTP inviate con questo metodo. La proprietà non è attualmente implementata. |
Type |
Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute. (Ereditato da Attribute) |
Use |
Ottiene o imposta un valore che indica se la destinazione dell'attributo corrente verrà serializzata come attributo XML anziché come campo XML. |
Xml |
Ottiene o imposta lo spazio dei nomi XML utilizzato durante la serializzazione di chiamate del metodo di destinazione a metodi remoti. |
Equals(Object) |
Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato. (Ereditato da Attribute) |
Get |
Restituisce il codice hash per l'istanza. (Ereditato da Attribute) |
Get |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
Is |
In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata. (Ereditato da Attribute) |
Match(Object) |
Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato. (Ereditato da Attribute) |
Memberwise |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
To |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
_Attribute. |
Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch. (Ereditato da Attribute) |
_Attribute. |
Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia. (Ereditato da Attribute) |
_Attribute. |
Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1). (Ereditato da Attribute) |
_Attribute. |
Fornisce l'accesso a proprietà e metodi esposti da un oggetto. (Ereditato da Attribute) |
Prodotto | Versioni |
---|---|
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback: