SoapException Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje výjimku, která je vyvolána, když je volána metoda webové služby XML přes SOAP a dojde k výjimce.
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
- Dědičnost
- Odvozené
- Atributy
Příklady
Následující příklad vyvolá, SoapException kde metoda webové služby XML nastaví Detail vlastnost.
<%@ 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
Poznámky
Může SoapException být vyvolán modulem CLR (Common Language Runtime) nebo metodou webové služby XML. Modul CLR (Common Language Runtime) může vyvolat SoapException chybu, pokud odpověď na požadavek není správně naformátovaná. Metody webové služby XML mohou generovat SoapException jednoduše vyvoláním výjimky v rámci metody webové služby XML. Pokud klient přistupoval k metodě přes SOAP, výjimka je zachycena na serveru a zabalena uvnitř nové SoapException. Vyvolán SoapException má následující hodnoty vlastností:
| Vlastnictví | Hodnota |
|---|---|
| Message | Vlastnost Message původní výjimky. |
| Code | ServerFaultCode. |
| Actor | Adresa URL metody webové služby XML. |
| Detail |
null, ale prázdný prvek podrobností je přítomn v prvku chyby. |
Metoda webové služby XML může vyvolat SoapException , když klienti volají pomocí protokolu SOAP. Pokud webová služba XML vyvolá SoapException, další podrobnosti lze přidat prostřednictvím ActorCode a Detail vlastnosti, které nelze jinak nastavit metodou webové služby XML, pokud je vyvolán jiný typ výjimky.
Konstruktory
| Name | Description |
|---|---|
| SoapException() |
Inicializuje novou instanci SoapException třídy. |
| SoapException(SerializationInfo, StreamingContext) |
Inicializuje novou instanci SoapException třídy serializovanými daty. |
| SoapException(String, XmlQualifiedName, Exception) |
Inicializuje novou instanci SoapException třídy se zadanou zprávou výjimky, kódem výjimky a odkazem na původní příčinu výjimky. |
| SoapException(String, XmlQualifiedName, SoapFaultSubCode) |
Inicializuje novou instanci SoapException třídy se zadanou zprávou výjimky, kódem výjimky a podkódem. |
| SoapException(String, XmlQualifiedName, String, Exception) |
Inicializuje novou instanci SoapException třídy se zadanou zprávou výjimky, kódem výjimky, identifikátorem URI identifikujícím kód, který výjimku způsobil, a odkazem na původní příčinu výjimky. |
| SoapException(String, XmlQualifiedName, String, String, String, XmlNode, SoapFaultSubCode, Exception) |
Inicializuje novou instanci SoapException třídy se zadanou zprávou výjimky, kódem výjimky, identifikátorem URI, který identifikuje část kódu, která způsobila výjimku, identifikátor URI, který představuje funkci webové služby XML při zpracování zprávy SOAP, lidský jazyk přidružený k výjimce, informace o výjimce specifické pro aplikaci, podkód pro chybu SOAP a odkaz na původní příčinu výjimky. |
| SoapException(String, XmlQualifiedName, String, String, XmlNode, SoapFaultSubCode, Exception) |
Inicializuje novou instanci SoapException třídy se zadanou zprávou výjimky, kódem výjimky, identifikátorem URI, který identifikuje část kódu, která způsobila výjimku, informace o výjimce specifické pro aplikaci a odkaz na původní příčinu výjimky. |
| SoapException(String, XmlQualifiedName, String, XmlNode, Exception) |
Inicializuje novou instanci SoapException třídy se zadanou zprávou výjimky, kódem výjimky, identifikátorem URI, který identifikuje část kódu, která způsobila výjimku, informace o výjimce specifické pro aplikaci a odkaz na původní příčinu výjimky. |
| SoapException(String, XmlQualifiedName, String, XmlNode) |
Inicializuje novou instanci SoapException třídy se zadanou zprávou výjimky, kódem výjimky, identifikátorem URI, který identifikuje část kódu, která způsobila výjimku, a informace o výjimce specifické pro aplikaci. |
| SoapException(String, XmlQualifiedName, String) |
Inicializuje novou instanci SoapException třídy se zadanou zprávou výjimky, kódem výjimky a identifikátorem URI identifikující část kódu, která způsobila výjimku. |
| SoapException(String, XmlQualifiedName) |
Inicializuje novou instanci SoapException třídy se zadanou zprávou výjimky a kódem výjimky. |
Pole
| Name | Description |
|---|---|
| ClientFaultCode |
Určuje kód chyby PROTOKOLU SOAP, který představuje volání klienta, které není správně naformátované nebo neobsahuje příslušné informace. |
| DetailElementName |
XmlQualifiedName Získá, který představuje Detail prvek SOAP Kód chyby. |
| MustUnderstandFaultCode |
Kód chyby PROTOKOLU SOAP, který představuje prvek SOAP označený atributem |
| ServerFaultCode |
Určuje, že kód chyby SOAP, který představuje chybu při zpracování volání klienta na serveru, kde problém není způsoben obsahem zprávy. |
| VersionMismatchFaultCode |
Během zpracování zprávy SOAP byl nalezen kód chyby SOAP, který představuje neplatný obor názvů obálky SOAP. |
Vlastnosti
| Name | Description |
|---|---|
| Actor |
Získá část kódu, která způsobila výjimku. |
| Code |
Získá typ kódu chyby SOAP. |
| Data |
Získá kolekci párů klíč/hodnota, které poskytují další uživatelem definované informace o výjimce. (Zděděno od Exception) |
| Detail |
XmlNode Získá, který představuje podrobnosti o chybě specifické pro aplikaci. |
| HelpLink |
Získá nebo nastaví odkaz na soubor nápovědy přidružený k této výjimce. (Zděděno od Exception) |
| HResult |
Získá nebo nastaví HRESULT, kódovanou číselnou hodnotu, která je přiřazena ke konkrétní výjimce. (Zděděno od Exception) |
| InnerException |
Exception Získá instanci, která způsobila aktuální výjimku. (Zděděno od Exception) |
| Lang |
Získá lidský jazyk přidružený k výjimce. |
| Message |
Získá zprávu, která popisuje aktuální výjimku. (Zděděno od Exception) |
| Node |
Získá identifikátor URI, který představuje část kódu, která způsobila výjimku. |
| Role |
Získá identifikátor URI, který představuje funkci webové služby XML při zpracování zprávy SOAP. |
| Source |
Získá nebo nastaví název aplikace nebo objektu, který způsobuje chybu. (Zděděno od Exception) |
| StackTrace |
Získá řetězcové znázornění okamžitých rámců v zásobníku volání. (Zděděno od Exception) |
| SubCode |
Získá volitelné informace o chybě obsažené v |
| TargetSite |
Získá metodu, která vyvolá aktuální výjimku. (Zděděno od Exception) |
Metody
| Name | Description |
|---|---|
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetBaseException() |
Při přepsání v odvozené třídě vrátí Exception to, že je původní příčinou jedné nebo více následných výjimek. (Zděděno od Exception) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
SerializationInfo Nastaví informace o výjimce. |
| GetObjectData(SerializationInfo, StreamingContext) |
Zastaralé.
Při přepsání v odvozené třídě nastaví SerializationInfo s informacemi o výjimce. (Zděděno od Exception) |
| GetType() |
Získá typ modulu runtime aktuální instance. (Zděděno od Exception) |
| IsClientFaultCode(XmlQualifiedName) |
Vrátí hodnotu, která určuje, zda je kód chyby SOAP ekvivalentní |
| IsMustUnderstandFaultCode(XmlQualifiedName) |
Vrátí hodnotu, která určuje, jestli je kód chyby SOAP ekvivalentní |
| IsServerFaultCode(XmlQualifiedName) |
Vrátí hodnotu, která určuje, zda je kód chyby SOAP ekvivalentní |
| IsVersionMismatchFaultCode(XmlQualifiedName) |
Vrátí hodnotu, která určuje, zda je kód chyby SOAP ekvivalentní |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vytvoří a vrátí řetězcovou reprezentaci aktuální výjimky. (Zděděno od Exception) |
Událost
| Name | Description |
|---|---|
| SerializeObjectState |
Zastaralé.
Nastane, když je výjimka serializována vytvořit objekt stavu výjimky, který obsahuje serializovaná data o výjimce. (Zděděno od Exception) |