SoapClientMessage.OneWay 속성

정의

서버에서 XML Web services 메서드의 처리를 마칠 때까지 클라이언트가 대기하는지 여부를 나타내는 값을 가져옵니다.

public:
 virtual property bool OneWay { bool get(); };
public override bool OneWay { get; }
member this.OneWay : bool
Public Overrides ReadOnly Property OneWay As Boolean

속성 값

Boolean

서버가 메서드의 처리를 마칠 때까지 클라이언트가 대기하지 않으면 true입니다.

예제

다음 코드 조각에는 XML 웹 서비스 클라이언트에서 보내고 받는 SOAP 메시지를 기록 하는 SOAP 확장의 일부입니다. 이 특정 조각 XML 웹 서비스 메서드는 단방향 때 알리는 구 해당 로그 파일에 출력 합니다 OneWay 속성은 true합니다.

newStream->Position = 0;
FileStream^ myFileStream = gcnew FileStream( filename, FileMode::Append,
   FileAccess::Write );
StreamWriter^ myStreamWriter = gcnew StreamWriter( myFileStream );
myStreamWriter->WriteLine(
   "================================== Request at {0}", DateTime::Now );

// Print to the log file the request header field for SoapAction header.
myStreamWriter->WriteLine( "The SoapAction Http request header field is: " );
myStreamWriter->WriteLine( "\t{0}", message->Action );

// Print to the log file the type of the client that invoked 
// the XML Web service method.
myStreamWriter->WriteLine( "The type of the client is: " );
if ( (message->Client->GetType())->Equals( typeid<MathSvc^> ) )
{
   myStreamWriter->WriteLine( "\tMathSvc" );
}

// Print to the log file the method invoked by the client.
myStreamWriter->WriteLine(
   "The method that has been invoked by the client is:" );
myStreamWriter->WriteLine( "\t{0}", message->MethodInfo->Name );

// Print to the log file if the method invoked is OneWay.
if ( message->OneWay )
{
   myStreamWriter->WriteLine(
      "The client doesn't wait for the server to finish processing" );
}
else
{
   myStreamWriter->WriteLine(
   "The client waits for the server to finish processing" );
}

// Print to the log file the URL of the site that provides 
// implementation of the method.
myStreamWriter->WriteLine(
   "The URL of the XML Web service method that has been requested is: " );
myStreamWriter->WriteLine( "\t{0}", message->Url );
myStreamWriter->WriteLine( "The contents of the SOAP envelope are: " );
myStreamWriter->Flush();

// Copy the contents of one stream to another. 
Copy( newStream, myFileStream );
myFileStream->Close();
newStream->Position = 0;

// Copy the contents of one stream to another. 
Copy( newStream, oldStream );
newStream.Position = 0;
FileStream myFileStream = new FileStream(filename, FileMode.Append,
   FileAccess.Write);
StreamWriter myStreamWriter = new StreamWriter(myFileStream);
myStreamWriter.WriteLine(
   "================================== Request at "
   + DateTime.Now);

// Print to the log file the request header field for SoapAction header.
myStreamWriter.WriteLine("The SoapAction Http request header field is: ");
myStreamWriter.WriteLine("\t" + message.Action);

// Print to the log file the type of the client that invoked
// the XML Web service method.
myStreamWriter.WriteLine("The type of the client is: ");
if((message.Client.GetType()).Equals(typeof(MathSvc)))
   myStreamWriter.WriteLine("\tMathSvc");

// Print to the log file the method invoked by the client.
myStreamWriter.WriteLine(
   "The method that has been invoked by the client is:");
myStreamWriter.WriteLine("\t" + message.MethodInfo.Name);

// Print to the log file if the method invoked is OneWay.
if(message.OneWay)
   myStreamWriter.WriteLine(
     "The client doesn't wait for the server to finish processing");
else
   myStreamWriter.WriteLine(
     "The client waits for the server to finish processing");

// Print to the log file the URL of the site that provides
// implementation of the method.
myStreamWriter.WriteLine(
   "The URL of the XML Web service method that has been requested is: ");
myStreamWriter.WriteLine("\t" + message.Url);
myStreamWriter.WriteLine("The contents of the SOAP envelope are: ");
myStreamWriter.Flush();

// Copy the contents of one stream to another.
Copy(newStream, myFileStream);
myFileStream.Close();
newStream.Position = 0;

// Copy the contents of one stream to another.
Copy(newStream, oldStream);
 newStream.Position = 0
 Dim myFileStream As New FileStream(filename, FileMode.Append, _
    FileAccess.Write)
 Dim myStreamWriter As New StreamWriter(myFileStream)
 myStreamWriter.WriteLine( _
    "================================== Request at " & DateTime.Now)

 ' Print to the log file the request header field for SoapAction header.
 myStreamWriter.WriteLine("The SoapAction Http request header field is: ")
 myStreamWriter.WriteLine(ControlChars.Tab & message.Action)

 ' Print to the log file the type of the client that invoked
 ' the XML Web service method.
 myStreamWriter.WriteLine("The type of the client is: ")
 If message.Client.GetType().Equals(GetType(MathSvc)) Then
    myStreamWriter.WriteLine(ControlChars.Tab & "MathSvc")
 End If

' Print to the log file the method invoked by the client.
 myStreamWriter.WriteLine( _
    "The method that has been invoked by the client is:")
 myStreamWriter.WriteLine(ControlChars.Tab & message.MethodInfo.Name)

 ' Print to the log file if the method invoked is OneWay.
 If message.OneWay Then
    myStreamWriter.WriteLine( _
       "The client doesn't wait for the server to finish processing")
 Else
    myStreamWriter.WriteLine( _
       "The client waits for the server to finish processing")
 End If 

 ' Print to the log file the URL of the site that provides 
 ' implementation of the method.
 myStreamWriter.WriteLine( _
    "The url of the XML Web service method that has been requested is: ")
 myStreamWriter.WriteLine(ControlChars.Tab & message.Url)
 myStreamWriter.WriteLine("The contents of the SOAP envelope are: ")
 myStreamWriter.Flush()

 ' Copy the contents of one stream to another. 
 Copy(newStream, myFileStream)
 myStreamWriter.Close()
 myFileStream.Close()
 newStream.Position = 0

 ' Copy the contents of one stream to another. 
 Copy(newStream, oldStream)

설명

A SoapDocumentMethodAttribute 또는 SoapRpcMethodAttribute 적용 하는 XML 웹 서비스 메서드 또는 XML Web service 클라이언트 설정 하 여 XML 웹 서비스 메서드는 한 가지 방법은 인지 지정할 수는 OneWay 특성의 속성입니다.

합니다 OneWay 수행 하는 동안 속성에 액세스할 수 있습니다 SoapMessageStage합니다.

적용 대상

추가 정보