SoapException Classe
Definizione
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.
Rappresenta l'eccezione generata quando un metodo del servizio Web XML viene chiamato su SOAP e si verifica un'eccezione.
public ref class SoapException : SystemException
public class SoapException : SystemException
[System.Serializable]
public class SoapException : SystemException
type SoapException = class
inherit SystemException
[<System.Serializable>]
type SoapException = class
inherit SystemException
Public Class SoapException
Inherits SystemException
- Ereditarietà
- Derivato
- Attributi
Esempio
Nell'esempio seguente viene generata una SoapException posizione in cui il metodo del servizio Web XML imposta la Detail proprietà.
<%@ WebService Language="C#" class="ThrowSoapException"%>
using System;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Serialization;
using System.Xml;
public class ThrowSoapException : WebService
{
// This XML Web service method generates a SOAP Client Fault code
[WebMethod]
public void myThrow(){
// Build the detail element of the SOAP fault.
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
System.Xml.XmlNode node = doc.CreateNode(XmlNodeType.Element, SoapException.DetailElementName.Name, SoapException.DetailElementName.Namespace);
// Build specific details for the SoapException.
// Add first child of detail XML element.
System.Xml.XmlNode details = doc.CreateNode(XmlNodeType.Element, "mySpecialInfo1", "http://tempuri.org/");
System.Xml.XmlNode detailsChild = doc.CreateNode(XmlNodeType.Element, "childOfSpecialInfo", "http://tempuri.org/");
details.AppendChild(detailsChild);
// Add second child of detail XML element with an attribute.
System.Xml.XmlNode details2 = doc.CreateNode(XmlNodeType.Element, "mySpecialInfo2", "http://tempuri.org/");
XmlAttribute attr = doc.CreateAttribute("t", "attrName", "http://tempuri.org/");
attr.Value = "attrValue";
details2.Attributes.Append(attr);
// Append the two child elements to the detail node.
node.AppendChild(details);
node.AppendChild(details2);
//Throw the exception.
SoapException se = new SoapException("Fault occurred", SoapException.ClientFaultCode,Context.Request.Url.AbsoluteUri,node);
throw se;
return; }
}
<%@ WebService Language="VB" class="ThrowSoapException"%>
Imports System
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Xml.Serialization
Imports System.Xml
Public Class ThrowSoapException
Inherits WebService
' This XML Web service method generates a SOAP Client Fault code
<WebMethod()> _
Public Sub myThrow()
' Build the detail element of the SOAP fault.
Dim doc As New System.Xml.XmlDocument()
Dim node As System.Xml.XmlNode = doc.CreateNode(XmlNodeType.Element, _
SoapException.DetailElementName.Name, _
SoapException.DetailElementName.Namespace)
' Build specific details for the SoapException.
' Add first child of detail XML element.
Dim details As System.Xml.XmlNode = doc.CreateNode(XmlNodeType.Element, _
"mySpecialInfo1", "http://tempuri.org/")
' Add second child of detail XML element with an attribute.
Dim details2 As System.Xml.XmlNode = doc.CreateNode(XmlNodeType.Element, _
"mySpecialInfo2", "http://tempuri.org/")
Dim attr As XmlAttribute = doc.CreateAttribute("t", "attrName", _
"http://tempuri.org/")
attr.Value = "attrValue"
details2.Attributes.Append(attr)
' Append the two child elements to the detail node.
node.AppendChild(details)
node.AppendChild(details2)
'Throw the exception
Dim se As New SoapException("Fault occurred", SoapException.ClientFaultCode, _
Context.Request.Url.AbsoluteUri, node)
Throw se
Return
End Sub
End Class
Commenti
L'oggetto SoapException può essere generato dal common language runtime o da un metodo di servizio Web XML. Common Language Runtime può generare un valore SoapException se una risposta a una richiesta non è formattata correttamente. I metodi del servizio Web XML possono generare semplicemente SoapException un'eccezione all'interno del metodo del servizio Web XML. Se il client ha eseguito l'accesso al metodo tramite SOAP, l'eccezione viene rilevata nel server e viene eseguito il wrapping all'interno di un nuovo SoapExceptionoggetto . Il SoapException valore generato include i valori delle proprietà seguenti:
Proprietà | Valore |
---|---|
Message | Proprietà Message dell'eccezione originale. |
Code | ServerFaultCode. |
Actor | URL del metodo del servizio Web XML. |
Detail |
null , ma un elemento di dettaglio vuoto è presente nell'elemento di errore. |
Un metodo di servizio Web XML potrebbe generare un oggetto SoapException quando i client chiamano SOAP. Se un servizio Web XML genera , altri dettagli possono essere aggiunti tramite le SoapExceptionActorCode proprietà e Detail che non possono altrimenti essere impostate da un metodo di servizio Web XML se viene generato un altro tipo di eccezione.
Costruttori
SoapException() |
Inizializza una nuova istanza della classe SoapException. |
SoapException(SerializationInfo, StreamingContext) |
Inizializza una nuova istanza della classe SoapException con dati serializzati. |
SoapException(String, XmlQualifiedName) |
Inizializza una nuova istanza della classe SoapException con il messaggio e il codice delle eccezioni specificati. |
SoapException(String, XmlQualifiedName, Exception) |
Inizializza una nuova istanza della classe SoapException con il messaggio di eccezione, il codice di eccezione e il riferimento alla causa radice dell'eccezione specificati. |
SoapException(String, XmlQualifiedName, SoapFaultSubCode) |
Inizializza una nuova istanza della classe SoapException con il messaggio di eccezione, il codice eccezione e il codice secondario specificati. |
SoapException(String, XmlQualifiedName, String) |
Inizializza una nuova istanza della classe SoapException con il messaggio di eccezione, il codice di eccezione e l'URI che identifica la parte di codice che l'ha causata specificati. |
SoapException(String, XmlQualifiedName, String, Exception) |
Inizializza una nuova istanza della classe SoapException con specificati il messaggio di eccezione, il codice di eccezione, l'URI che identifica il codice che l'ha causata e il riferimento alla causa radice dell'eccezione. |
SoapException(String, XmlQualifiedName, String, String, String, XmlNode, SoapFaultSubCode, Exception) |
Inizializza una nuova istanza della classe SoapException con i valori specificati per messaggio di eccezione, codice di eccezione, URI che identifica il frammento di codice che ha causato l'eccezione, URI che rappresenta la funzione del servizio Web XML durante l'elaborazione del messaggio SOAP, lingua associata all'eccezione, informazioni sull'eccezione specifiche dell'applicazione, codice secondario per l'errore SOAP e riferimento alla causa radice dell'eccezione. |
SoapException(String, XmlQualifiedName, String, String, XmlNode, SoapFaultSubCode, Exception) |
Inizializza una nuova istanza della classe SoapException con i valori specificati per messaggio di eccezione, codice di eccezione, URI che identifica il frammento di codice che ha causato l'eccezione, informazioni sull'eccezione specifiche dell'applicazione e riferimento alla causa radice dell'eccezione. |
SoapException(String, XmlQualifiedName, String, XmlNode) |
Inizializza una nuova istanza della classe SoapException con specificati il messaggio di eccezione, il codice di eccezione, l'URI che identifica la parte di codice che l'ha causata e le informazioni sull'eccezione specifiche dell'applicazione. |
SoapException(String, XmlQualifiedName, String, XmlNode, Exception) |
Inizializza una nuova istanza della classe SoapException con i valori specificati per messaggio di eccezione, codice di eccezione, URI che identifica il frammento di codice che ha causato l'eccezione, informazioni sull'eccezione specifiche dell'applicazione e riferimento alla causa radice dell'eccezione. |
Campi
ClientFaultCode |
Specifica un codice di errore SOAP indicante che una chiamata client non è stata formattata correttamente o non contiene le informazioni appropriate. |
DetailElementName |
Ottiene un oggetto XmlQualifiedName che rappresenta l'elemento Detail di un codice di errore SOAP. |
MustUnderstandFaultCode |
Un codice di errore SOAP che identifica un elemento SOAP contrassegnato con l'attributo |
ServerFaultCode |
Specifica un codice di errore SOAP che rappresenta un errore verificatosi durante l'elaborazione di una chiamata client sul server, in cui il problema non era dovuto al contenuto del messaggio. |
VersionMismatchFaultCode |
Codice di errore SOAP che rappresenta l'individuazione di uno spazio dei nomi non valido per un envelope SOAP durante l'elaborazione del messaggio SOAP. |
Proprietà
Actor |
Recupera la porzione di codice che ha causato l'eccezione. |
Code |
Recupera il tipo di codice SOAP con errori. |
Data |
Ottiene una raccolta di coppie chiave/valore che forniscono informazioni definite dall'utente aggiuntive sull'eccezione. (Ereditato da Exception) |
Detail |
Ottiene un oggetto XmlNode che rappresenta i dettagli sull'errore specifici dell'applicazione. |
HelpLink |
Ottiene o imposta un collegamento al file della Guida associato all'eccezione. (Ereditato da Exception) |
HResult |
Ottiene o imposta HRESULT, un valore numerico codificato che viene assegnato a un'eccezione specifica. (Ereditato da Exception) |
InnerException |
Ottiene l'istanza di Exception che ha causato l'eccezione corrente. (Ereditato da Exception) |
Lang |
Ottiene la lingua associata all'eccezione. |
Message |
Ottiene un messaggio che descrive l'eccezione corrente. (Ereditato da Exception) |
Node |
Ottiene un URI che rappresenta il codice che ha causato l'eccezione. |
Role |
Ottiene un URI che rappresenta la funzione del servizio Web XML nell'elaborazione del messaggio SOAP. |
Source |
Ottiene o imposta il nome dell'oggetto o dell'applicazione che ha generato l'errore. (Ereditato da Exception) |
StackTrace |
Ottiene una rappresentazione di stringa dei frame immediati nello stack di chiamate. (Ereditato da Exception) |
SubCode |
Ottiene le informazioni facoltative sull'errore contenute nell'elemento |
TargetSite |
Ottiene il metodo che genera l'eccezione corrente. (Ereditato da Exception) |
Metodi
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetBaseException() |
Quando ne viene eseguito l'override in una classe derivata, restituisce l'Exception che è la causa radice di una o più eccezioni successive. (Ereditato da Exception) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetObjectData(SerializationInfo, StreamingContext) |
Imposta l'oggetto SerializationInfo con le informazioni sull'eccezione. |
GetObjectData(SerializationInfo, StreamingContext) |
Obsoleti.
Quando ne viene eseguito l'override in una classe derivata, imposta il controllo SerializationInfo con le informazioni sull'eccezione. (Ereditato da Exception) |
GetType() |
Ottiene il tipo di runtime dell'istanza corrente. (Ereditato da Exception) |
IsClientFaultCode(XmlQualifiedName) |
Restituisce un valore che indica se il codice di errore SOAP equivale al codice di errore SOAP |
IsMustUnderstandFaultCode(XmlQualifiedName) |
Restituisce un valore che indica se il codice di errore SOAP equivale a |
IsServerFaultCode(XmlQualifiedName) |
Restituisce un valore che indica se il codice di errore SOAP equivale al codice di errore SOAP |
IsVersionMismatchFaultCode(XmlQualifiedName) |
Restituisce un valore che indica se il codice di errore SOAP equivale al codice di errore SOAP |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Crea e restituisce una rappresentazione di stringa dell'eccezione corrente. (Ereditato da Exception) |
Eventi
SerializeObjectState |
Obsoleti.
Si verifica quando un'eccezione viene serializzata per creare un oggetto di stato eccezione contenente i dati serializzati relativi all'eccezione. (Ereditato da Exception) |