SoapServices.GetTypeAndMethodNameFromSoapAction 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
判斷與指定 SOAPAction 值關聯之方法的型別和方法名稱。
public:
static bool GetTypeAndMethodNameFromSoapAction(System::String ^ soapAction, [Runtime::InteropServices::Out] System::String ^ % typeName, [Runtime::InteropServices::Out] System::String ^ % methodName);
public static bool GetTypeAndMethodNameFromSoapAction (string soapAction, out string typeName, out string methodName);
static member GetTypeAndMethodNameFromSoapAction : string * string * string -> bool
Public Shared Function GetTypeAndMethodNameFromSoapAction (soapAction As String, ByRef typeName As String, ByRef methodName As String) As Boolean
參數
- soapAction
- String
對其要求型別和方法名稱之方法的 SOAPAction。
傳回
如果成功地取得型別和方法名稱,則為 true
,否則為 false
。
例外狀況
SOAPAction 值的開頭和結尾不加引號。
立即呼叫端沒有基礎結構使用權限。
範例
下列程式碼範例會顯示如何使用這個方法。 此程式代碼範例是針對 類別提供的較大範例的 SoapServices 一部分。
// Get the SOAP action for the method.
System::Reflection::MethodBase^ getHelloMethodBase =
ExampleNamespace::ExampleClass::typeid->GetMethod( L"GetHello" );
String^ getHelloSoapAction =
SoapServices::GetSoapActionFromMethodBase( getHelloMethodBase );
Console::WriteLine( L"The SOAP action for the method "
L"ExampleClass.GetHello is {0}.", getHelloSoapAction );
bool isSoapActionValid =
SoapServices::IsSoapActionValidForMethodBase(
getHelloSoapAction, getHelloMethodBase );
if ( isSoapActionValid )
{
Console::WriteLine( L"The SOAP action, {0}, "
L"is valid for ExampleClass.GetHello", getHelloSoapAction );
}
else
{
Console::WriteLine( L"The SOAP action, {0}, "
L"is not valid for ExampleClass.GetHello", getHelloSoapAction );
}
// Register the SOAP action for the GetHello method.
SoapServices::RegisterSoapActionForMethodBase( getHelloMethodBase );
// Get the type and the method names encoded into the SOAP action.
String^ encodedTypeName;
String^ encodedMethodName;
SoapServices::GetTypeAndMethodNameFromSoapAction(
getHelloSoapAction,encodedTypeName,encodedMethodName );
Console::WriteLine( L"The type name encoded in this SOAP action is {0}.",
encodedTypeName );
Console::WriteLine( L"The method name encoded in this SOAP action is {0}.",
encodedMethodName );
// Get the SOAP action for the method.
System.Reflection.MethodBase getHelloMethodBase =
typeof(ExampleNamespace.ExampleClass).GetMethod("GetHello");
string getHelloSoapAction =
SoapServices.GetSoapActionFromMethodBase(getHelloMethodBase);
Console.WriteLine(
"The SOAP action for the method " +
"ExampleClass.GetHello is {0}.", getHelloSoapAction);
bool isSoapActionValid = SoapServices.IsSoapActionValidForMethodBase(
getHelloSoapAction,
getHelloMethodBase);
if (isSoapActionValid)
{
Console.WriteLine(
"The SOAP action, {0}, " +
"is valid for ExampleClass.GetHello",
getHelloSoapAction);
}
else
{
Console.WriteLine(
"The SOAP action, {0}, " +
"is not valid for ExampleClass.GetHello",
getHelloSoapAction);
}
// Register the SOAP action for the GetHello method.
SoapServices.RegisterSoapActionForMethodBase(getHelloMethodBase);
// Get the type and the method names encoded into the SOAP action.
string encodedTypeName;
string encodedMethodName;
SoapServices.GetTypeAndMethodNameFromSoapAction(
getHelloSoapAction,
out encodedTypeName,
out encodedMethodName);
Console.WriteLine(
"The type name encoded in this SOAP action is {0}.",
encodedTypeName);
Console.WriteLine(
"The method name encoded in this SOAP action is {0}.",
encodedMethodName);
備註
true
如果類型和方法名稱查閱成功,則為 ;否則為 false
。