次の方法で共有


WebException コンストラクター

定義

WebException クラスの新しいインスタンスを初期化します。

オーバーロード

名前 説明
WebException()

WebException クラスの新しいインスタンスを初期化します。

WebException(String)

指定したエラー メッセージを使用して、 WebException クラスの新しいインスタンスを初期化します。

WebException(SerializationInfo, StreamingContext)
古い.

指定したSerializationInfoおよびStreamingContextインスタンスから、WebException クラスの新しいインスタンスを初期化します。

WebException(String, WebExceptionStatus)

指定したエラー メッセージと状態を使用して、 WebException クラスの新しいインスタンスを初期化します。

WebException(String, Exception)

指定したエラー メッセージと入れ子になった例外を使用して、 WebException クラスの新しいインスタンスを初期化します。

WebException(String, Exception, WebExceptionStatus, WebResponse)

指定したエラー メッセージ、入れ子になった例外、状態、および応答を使用して、 WebException クラスの新しいインスタンスを初期化します。

WebException()

ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs

WebException クラスの新しいインスタンスを初期化します。

public:
 WebException();
public WebException();
Public Sub New ()

次の例では、既定の WebExceptionをスローします。


 try   
 {
     // A 'Socket' object has been created.
     Socket httpSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

     // The IPaddress of the unknown uri is resolved using the 'Dns.Resolve' method. 
     
     IPHostEntry hostEntry = Dns.Resolve("http://www.contoso.com");

     IPAddress serverAddress = hostEntry.AddressList[0];
     IPEndPoint endPoint = new IPEndPoint(serverAddress, 80);
     httpSocket.Connect(endPoint);
     Console.WriteLine("Connection created successfully");
     httpSocket.Close();
  }
catch(SocketException e)
  {
  String exp = e.Message;	
  // Throw the WebException with no parameters.
     throw new WebException();
  }
Try
    ' A 'Socket' object has been created.
    Dim httpSocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
    
    ' The IPaddress of the unknown uri is resolved using the 'Dns.Resolve' method. 
     ' which leads to the 'SocketException' exception. 
    
    Dim hostEntry As IPHostEntry = Dns.Resolve("http://www.contoso.com")
    
    Dim serverAddress As IPAddress = hostEntry.AddressList(0)
    Dim endPoint As New IPEndPoint(serverAddress, 80)
    httpSocket.Connect(endPoint)
    Console.WriteLine("Connection created successfully")
    httpSocket.Close()
Catch e As SocketException
    Dim exp As [String] = e.Message
    ' Throw the WebException with no parameters.
    Throw New WebException()
End Try

注釈

パラメーターなしのコンストラクターは、 WebException クラスの新しいインスタンスを初期化します。 Message プロパティは、エラーを説明するシステム指定のメッセージに初期化されます。 このメッセージでは、現在のシステム カルチャが考慮されます。 InnerExceptionプロパティとResponse プロパティは、nullに初期化されます。 Status プロパティは、RequestCanceledに初期化されます。

適用対象

WebException(String)

ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs

指定したエラー メッセージを使用して、 WebException クラスの新しいインスタンスを初期化します。

public:
 WebException(System::String ^ message);
public WebException(string message);
public WebException(string? message);
new System.Net.WebException : string -> System.Net.WebException
Public Sub New (message As String)

パラメーター

message
String

エラー メッセージのテキスト。

次の例では、エラー メッセージを指定して WebException をスローします。

 try
{
     // A 'Socket' object has been created.
     Socket httpSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

     // The IPaddress of the unknown uri is resolved using the 'Dns.Resolve' method. 
     IPHostEntry hostEntry = Dns.Resolve(connectUri);

     IPAddress serverAddress = hostEntry.AddressList[0];
     IPEndPoint endPoint = new IPEndPoint(serverAddress, 80);
     httpSocket.Connect(endPoint);
     Console.WriteLine("Connection created successfully");
     httpSocket.Close();
  }
catch(SocketException e)
  {		     
     Console.WriteLine("\nException thrown.\nThe Original Message is: "+e.Message);
     // Throw the 'WebException' object with a message string specific to the situation.
     throw new WebException("Unable to locate the Server with 'www.contoso.com' Uri.");
  }

Try
    ' A 'Socket' object has been created.
    Dim httpSocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
    
    ' The IPaddress of the unknown uri is resolved using the 'Dns.Resolve' method. 
     
    Dim hostEntry As IPHostEntry = Dns.Resolve(connectUri)
    
    Dim serverAddress As IPAddress = hostEntry.AddressList(0)
    Dim endPoint As New IPEndPoint(serverAddress, 80)
    httpSocket.Connect(endPoint)
    Console.WriteLine("Connection created successfully")
    httpSocket.Close()
Catch e As SocketException
    Console.WriteLine((ControlChars.Cr + "Exception thrown." + ControlChars.Cr + "The Original Message is: " + e.Message))
    ' Throw the 'WebException' object with a message string specific to the situation.
    Throw New WebException("Unable to locate the Server with 'www.contoso.com' Uri.")
End Try

注釈

WebException インスタンスは、Message プロパティを message の値に設定して初期化されます。 messagenullされている場合、Message プロパティはシステム指定のメッセージに初期化されます。 InnerExceptionプロパティとResponse プロパティは、nullに初期化されます。 Status プロパティは、RequestCanceledに初期化されます。

こちらもご覧ください

適用対象

WebException(SerializationInfo, StreamingContext)

ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs

注意事項

This API supports obsolete formatter-based serialization. It should not be called or extended by application code.

指定したSerializationInfoおよびStreamingContextインスタンスから、WebException クラスの新しいインスタンスを初期化します。

protected:
 WebException(System::Runtime::Serialization::SerializationInfo ^ serializationInfo, System::Runtime::Serialization::StreamingContext streamingContext);
[System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
protected WebException(System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
protected WebException(System.Runtime.Serialization.SerializationInfo serializationInfo, System.Runtime.Serialization.StreamingContext streamingContext);
[<System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new System.Net.WebException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> System.Net.WebException
new System.Net.WebException : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> System.Net.WebException
Protected Sub New (serializationInfo As SerializationInfo, streamingContext As StreamingContext)

パラメーター

serializationInfo
SerializationInfo

新しいWebExceptionをシリアル化するために必要な情報を含むSerializationInfo

streamingContext
StreamingContext

新しいWebExceptionに関連付けられているシリアル化されたストリームのソースを含むStreamingContext

属性

注釈

このコンストラクターは、WebException クラスのISerializable インターフェイスを実装します。

こちらもご覧ください

適用対象

WebException(String, WebExceptionStatus)

ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs

指定したエラー メッセージと状態を使用して、 WebException クラスの新しいインスタンスを初期化します。

public:
 WebException(System::String ^ message, System::Net::WebExceptionStatus status);
public WebException(string message, System.Net.WebExceptionStatus status);
public WebException(string? message, System.Net.WebExceptionStatus status);
new System.Net.WebException : string * System.Net.WebExceptionStatus -> System.Net.WebException
Public Sub New (message As String, status As WebExceptionStatus)

パラメーター

message
String

エラー メッセージのテキスト。

status
WebExceptionStatus

WebExceptionStatus値の 1 つ。

次の例では、エラー メッセージとWebExceptionStatusを指定してWebExceptionをスローします。


 try
{
       // A 'Socket' object has been created.
       Socket httpSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

      // The IPaddress of the unknown uri is resolved using the 'Dns.Resolve' method. 
  
      IPHostEntry hostEntry = Dns.Resolve("http://www.contoso.com");

      IPAddress serverAddress = hostEntry.AddressList[0];
      IPEndPoint endPoint = new IPEndPoint(serverAddress, 80);
      httpSocket.Connect(endPoint);
      Console.WriteLine("Connection created successfully");
      httpSocket.Close();
   }
catch(SocketException e)
  {
      Console.WriteLine("\nException thrown.\nThe Original Message is: "+e.Message);
      // Throw the 'WebException' object with a message string and message status specific to the situation.
      throw new WebException("Unable to locate the Server with 'www.contoso.com' Uri.",WebExceptionStatus.NameResolutionFailure);
  }

Try
    ' A 'Socket' object has been created.
    Dim httpSocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
    
    ' The IPaddress of the unknown uri is resolved using the 'Dns.Resolve' method. 
     
    Dim hostEntry As IPHostEntry = Dns.Resolve(connectUri)
    
    Dim serverAddress As IPAddress = hostEntry.AddressList(0)
    Dim endPoint As New IPEndPoint(serverAddress, 80)
    httpSocket.Connect(endPoint)
    Console.WriteLine("Connection created successfully")
    httpSocket.Close()
Catch e As SocketException
    Console.WriteLine((ControlChars.Cr + "Exception thrown." + ControlChars.Cr + "The Original Message is: " + e.Message))
    ' Throw the 'WebException' object with a message string and message status specific to the situation.
    Throw New WebException("Unable to locate the Server with 'www.contoso.com' Uri.", WebExceptionStatus.NameResolutionFailure)
End Try

注釈

WebException インスタンスは、Message プロパティを message の値に設定し、Status プロパティを status の値に設定して初期化します。 messagenullされている場合、Message プロパティはシステム指定のメッセージに初期化されます。 InnerExceptionプロパティとResponse プロパティは、nullに初期化されます。

適用対象

WebException(String, Exception)

ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs

指定したエラー メッセージと入れ子になった例外を使用して、 WebException クラスの新しいインスタンスを初期化します。

public:
 WebException(System::String ^ message, Exception ^ inner);
public:
 WebException(System::String ^ message, Exception ^ innerException);
public WebException(string message, Exception inner);
public WebException(string? message, Exception? innerException);
public WebException(string message, Exception innerException);
new System.Net.WebException : string * Exception -> System.Net.WebException
new System.Net.WebException : string * Exception -> System.Net.WebException
Public Sub New (message As String, inner As Exception)
Public Sub New (message As String, innerException As Exception)

パラメーター

message
String

エラー メッセージのテキスト。

innerinnerException
Exception

入れ子になった例外。

次の例では、エラー メッセージと入れ子になった例外を指定して WebException をスローします。


   try
   {
          // A 'Socket' object has been created.
          Socket httpSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

          // The IPaddress of the unknown uri is resolved using the 'Dns.Resolve' method. 
       
          IPHostEntry hostEntry = Dns.Resolve(connectUri);

          IPAddress serverAddress = hostEntry.AddressList[0];
          IPEndPoint endPoint = new IPEndPoint(serverAddress, 80);
          httpSocket.Connect(endPoint);
          Console.WriteLine("Connection created successfully");
          httpSocket.Close();		 
    }
  catch(SocketException e)
{ 
       Console.WriteLine("\nException thrown.\nThe Original Message is: "+e.Message);
       //  Throw the 'WebException' object with a message string specific to the situation; 
          //  and the 'InnerException' which actually lead to this exception.
          throw new WebException("Unable to locate the Server with 'www.contoso.com' Uri.",e);
    }

Try
    ' A 'Socket' object has been created.
    Dim httpSocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
    
    ' The IPaddress of the unknown uri is resolved using the 'Dns.Resolve' method. 
     Dim hostEntry As IPHostEntry = Dns.Resolve(connectUri)
    
    Dim serverAddress As IPAddress = hostEntry.AddressList(0)
    Dim endPoint As New IPEndPoint(serverAddress, 80)
    httpSocket.Connect(endPoint)
    Console.WriteLine("Connection created successfully")
    httpSocket.Close()
Catch e As SocketException
    Console.WriteLine((ControlChars.Cr + "Exception thrown." + ControlChars.Cr + "The Original Message is: " + e.Message))
    ' Throw the 'WebException' object with a message string specific to the situation. 
     ' and the 'InnerException' which actually lead to this exception.
    Throw New WebException("Unable to locate the Server with 'www.contoso.com' Uri.", e)
End Try

注釈

WebException インスタンスは、Message プロパティを message の値に設定し、InnerException プロパティを innerException の値に設定して初期化します。 messagenullされている場合、Message プロパティはシステム指定のメッセージに初期化されます。 InnerExceptionプロパティとResponse プロパティは、nullに初期化されます。 Status プロパティは、RequestCanceledに初期化されます。

こちらもご覧ください

適用対象

WebException(String, Exception, WebExceptionStatus, WebResponse)

ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs
ソース:
WebException.cs

指定したエラー メッセージ、入れ子になった例外、状態、および応答を使用して、 WebException クラスの新しいインスタンスを初期化します。

public:
 WebException(System::String ^ message, Exception ^ inner, System::Net::WebExceptionStatus status, System::Net::WebResponse ^ response);
public:
 WebException(System::String ^ message, Exception ^ innerException, System::Net::WebExceptionStatus status, System::Net::WebResponse ^ response);
public WebException(string message, Exception inner, System.Net.WebExceptionStatus status, System.Net.WebResponse response);
public WebException(string? message, Exception? innerException, System.Net.WebExceptionStatus status, System.Net.WebResponse? response);
public WebException(string message, Exception innerException, System.Net.WebExceptionStatus status, System.Net.WebResponse response);
new System.Net.WebException : string * Exception * System.Net.WebExceptionStatus * System.Net.WebResponse -> System.Net.WebException
new System.Net.WebException : string * Exception * System.Net.WebExceptionStatus * System.Net.WebResponse -> System.Net.WebException
Public Sub New (message As String, inner As Exception, status As WebExceptionStatus, response As WebResponse)
Public Sub New (message As String, innerException As Exception, status As WebExceptionStatus, response As WebResponse)

パラメーター

message
String

エラー メッセージのテキスト。

innerinnerException
Exception

入れ子になった例外。

status
WebExceptionStatus

WebExceptionStatus値の 1 つ。

response
WebResponse

リモート ホストからの応答を含む WebResponse インスタンス。

次の例では、エラー メッセージとWebExceptionStatusを指定してWebExceptionをスローします。

      // Send the data. 
      Encoding ASCII = Encoding.ASCII;
      string requestPage = "GET /nhjj.htm HTTP/1.1\r\nHost: " + connectUri + "\r\nConnection: Close\r\n\r\n";
      Byte[] byteGet = ASCII.GetBytes(requestPage);
      Byte[] recvBytes = new Byte[256];

      // Create an 'IPEndPoint' object.
 
      IPHostEntry hostEntry = Dns.Resolve(connectUri);
      IPAddress serverAddress = hostEntry.AddressList[0];
      IPEndPoint endPoint = new IPEndPoint(serverAddress, 80);

      // Create a 'Socket' object  for sending data.
      Socket connectSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream,ProtocolType.Tcp);
 
      // Connect to host using 'IPEndPoint' object.

      connectSocket.Connect(endPoint);
 
      // Sent the 'requestPage' text to the host.
      connectSocket.Send(byteGet, byteGet.Length, 0);
 
      // Receive the information sent by the server.
      Int32 bytesReceived = connectSocket.Receive(recvBytes, recvBytes.Length, 0);
      String headerString = ASCII.GetString(recvBytes, 0, bytesReceived);

     // Check whether 'status 404' is there or not in the information sent by server.
     if(headerString.IndexOf("404")!=-1)
     {	 
         bytesReceived = connectSocket.Receive(recvBytes, recvBytes.Length, 0);
         MemoryStream memoryStream = new MemoryStream(recvBytes);
         getStream = (Stream) memoryStream;
 
         // Create a 'WebResponse' object
         WebResponse myWebResponse = (WebResponse) new HttpConnect(getStream);
         Exception myException = new Exception("File Not found");

         // Throw the 'WebException' object with a message string, message status,InnerException and WebResponse
         throw new WebException("The Requested page is not found.",myException,WebExceptionStatus.ProtocolError,myWebResponse);
     }

     connectSocket.Close();

     ' Send the data. 
       Dim ASCII As Encoding = Encoding.ASCII
       Dim requestPage As String = "GET /nhjj.htm HTTP/1.1" + ControlChars.Lf + ControlChars.Cr + "Host: " + connectUri + ControlChars.Lf + ControlChars.Cr + "Connection: Close" + ControlChars.Lf + ControlChars.Cr + ControlChars.Lf + ControlChars.Cr
       Dim byteGet As [Byte]() = ASCII.GetBytes(requestPage)
       Dim recvBytes(256) As [Byte]
       
       ' Create an 'IPEndPoint' object.
       Dim hostEntry As IPHostEntry = Dns.Resolve(connectUri)
       Dim serverAddress As IPAddress = hostEntry.AddressList(0)
       Dim endPoint As New IPEndPoint(serverAddress, 80)
       
       ' Create a 'Socket' object  for sending data.
       Dim connectSocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
       
       ' Connect to host using 'IPEndPoint' object.
       connectSocket.Connect(endPoint)
       
       ' Sent the 'requestPage' text to the host.
       connectSocket.Send(byteGet, byteGet.Length, 0)
       
       ' Receive the information sent by the server.
       Dim bytesReceived As Int32 = connectSocket.Receive(recvBytes, recvBytes.Length, 0)
       Dim headerString As [String] = ASCII.GetString(recvBytes, 0, bytesReceived)
      
       ' Check whether 'status 404' is there or not in the information sent by server.
       If headerString.IndexOf("404") <> False Then
           bytesReceived = connectSocket.Receive(recvBytes, recvBytes.Length, 0)
           Dim memoryStream As New MemoryStream(recvBytes)
           getStream = CType(memoryStream, Stream)
           
           ' Create a 'WebResponse' object.
           Dim myWebResponse As WebResponse = CType(New HttpConnect(getStream), WebResponse)
           Dim myException As New Exception("File Not found")
           
           ' Throw the 'WebException' object with a message string, message status,InnerException and WebResponse.
           Throw New WebException("The Requested page is not found.", myException, WebExceptionStatus.ProtocolError, myWebResponse)
       End If 

       connectSocket.Close()

注釈

WebException インスタンスは、Message プロパティを message の値に設定し、InnerException プロパティを innerException の値に設定し、Status プロパティを status の値に設定し、Response プロパティを response の値に設定して初期化します。 messagenullされている場合、Message プロパティはシステム指定のメッセージに初期化されます。

適用対象