Exception.ToString Methode

Definition

Erstellt eine Zeichenfolgendarstellung der aktuellen Ausnahme und gibt diese zurück.Creates and returns a string representation of the current exception.

public:
 override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String

Gibt zurück

Eine Zeichenfolgendarstellung der aktuellen Ausnahme.A string representation of the current exception.

Implementiert

Beispiele

Im folgenden Beispiel wird eine Ausnahme ausgelöst, und das Ergebnis des ToString Abrufs von für diese Ausnahme wird angezeigt.The following example causes an exception and displays the result of calling ToString on that exception. Beachten Sie, Exception.ToString dass die-Methode implizit aufgerufen wird, wenn die Ausnahme Klasseninstanz in der Argument Console.WriteLine Liste der Methode angezeigt wird.Note that the Exception.ToString method is called implicitly when the Exception class instance appears in the argument list of the Console.WriteLine method.

using namespace System;

public ref class TestClass{};

int main()
{
   TestClass^ test = gcnew TestClass;
   array<Object^>^ objectsToCompare = { test, test->ToString(), 123,
                                        (123).ToString(), "some text",
                                        "Some Text" };
   String^ s = "some text";
   for each (Object^ objectToCompare in objectsToCompare) {
      try {
         Int32 i = s->CompareTo(objectToCompare);
         Console::WriteLine("Comparing '{0}' with '{1}': {2}",
                            s, objectToCompare, i);
      }
      catch (ArgumentException^ e) {
            Console::WriteLine("Bad argument: {0} (type {1})",
                              objectToCompare,
                              objectToCompare->GetType()->Name);
            Console::WriteLine("Exception information: {0}", e);
      }
      Console::WriteLine();
   }
}
// The example displays the following output:
//     Bad argument: TestClass (type TestClass)
//     Exception information: System.ArgumentException: Object must be of type String.
//        at System.String.CompareTo(Object value)
//        at Example.Main()
//     
//     Comparing 'some text' with 'TestClass': -1
//     
//     Bad argument: 123 (type Int32)
//     Exception information: System.ArgumentException: Object must be of type String.
//        at System.String.CompareTo(Object value)
//        at Example.Main()
//     
//     Comparing 'some text' with '123': 1
//     
//     Comparing 'some text' with 'some text': 0
//     
//     Comparing 'some text' with 'Some Text': -1
using System;

public class TestClass
{}

public class Example 
{
   public static void Main()
   {
      var test = new TestClass();
      Object[] objectsToCompare = { test, test.ToString(), 123,
                                    123.ToString(), "some text",
                                    "Some Text" };
      string s = "some text";
      foreach (var objectToCompare in objectsToCompare) {
         try {
            int i = s.CompareTo(objectToCompare);
            Console.WriteLine("Comparing '{0}' with '{1}': {2}",
                              s, objectToCompare, i);
         }
         catch (ArgumentException e) {
            Console.WriteLine("Bad argument: {0} (type {1})",
                              objectToCompare,
                              objectToCompare.GetType().Name);
            Console.WriteLine("Exception information: {0}", e);
         }
         Console.WriteLine();
      }
   }
}
// The example displays the following output:
//     Bad argument: TestClass (type TestClass)
//     Exception information: System.ArgumentException: Object must be of type String.
//        at System.String.CompareTo(Object value)
//        at Example.Main()
//     
//     Comparing 'some text' with 'TestClass': -1
//     
//     Bad argument: 123 (type Int32)
//     Exception information: System.ArgumentException: Object must be of type String.
//        at System.String.CompareTo(Object value)
//        at Example.Main()
//     
//     Comparing 'some text' with '123': 1
//     
//     Comparing 'some text' with 'some text': 0
//     
//     Comparing 'some text' with 'Some Text': -1
Public Class TestClass
End Class 

Public Class Example
   Public Shared Sub Main()
      Dim test As New TestClass()
      Dim objectsToCompare() As Object = { test, test.ToString(), 123,
                                           123.ToString(), "some text",
                                           "Some Text" }
      Dim s As String = "some text"
      For Each objectToCompare In objectsToCompare
         Try
            Dim i As Integer = s.CompareTo(objectToCompare)
            Console.WriteLine("Comparing '{0}' with '{1}': {2}",
                              s, objectToCompare, i)
         Catch e As ArgumentException
            Console.WriteLine("Bad argument: {0} (type {1})",
                              objectToCompare,
                              objectToCompare.GetType().Name)
            Console.WriteLine("Exception information: {0}", e)
         End Try
         Console.WriteLine()
      Next
   End Sub 
End Class 
' The example displays the following output:
'     Bad argument: TestClass (type TestClass)
'     Exception information: System.ArgumentException: Object must be of type String.
'        at System.String.CompareTo(Object value)
'        at Example.Main()
'     
'     Comparing 'some text' with 'TestClass': -1
'     
'     Bad argument: 123 (type Int32)
'     Exception information: System.ArgumentException: Object must be of type String.
'        at System.String.CompareTo(Object value)
'        at Example.Main()
'     
'     Comparing 'some text' with '123': 1
'     
'     Comparing 'some text' with 'some text': 0
'     
'     Comparing 'some text' with 'Some Text': -1

Hinweise

ToStringgibt eine-Darstellung der aktuellen Ausnahme zurück, die von Menschen verstanden werden soll.ToString returns a representation of the current exception that is intended to be understood by humans. Wenn die Ausnahme Kultur abhängige Daten enthält, muss die von ToString zurückgegebene Zeichen folgen Darstellung die aktuelle System Kultur berücksichtigen.Where the exception contains culture-sensitive data, the string representation returned by ToString is required to take into account the current system culture. Obwohl es für das Format der zurückgegebenen Zeichenfolge keine exakten Anforderungen gibt, sollte versucht werden, den Wert des Objekts entsprechend der vom Benutzer erkannten Werte widerzuspiegeln.Although there are no exact requirements for the format of the returned string, it should attempt to reflect the value of the object as perceived by the user.

Die Standard Implementierung von ToString Ruft den Namen der Klasse ab, die die aktuelle Ausnahme ausgelöst hat, die Meldung, das Ergebnis ToString des Abrufs von für die innere Ausnahme und das Environment.StackTraceErgebnis des Aufruf von.The default implementation of ToString obtains the name of the class that threw the current exception, the message, the result of calling ToString on the inner exception, and the result of calling Environment.StackTrace. Wenn eines dieser Member ist null, ist der Wert nicht in der zurückgegebenen Zeichenfolge enthalten.If any of these members is null, its value is not included in the returned string.

Wenn keine Fehlermeldung vorhanden ist oder es sich um eine leere Zeichenfolge ("") handelt, wird keine Fehlermeldung zurückgegeben.If there is no error message or if it is an empty string (""), then no error message is returned. Der Name der inneren Ausnahme und die Stapel Überwachung werden nur zurückgegeben, wenn dies nicht nullder Fall ist.The name of the inner exception and the stack trace are returned only if they are not null.

Diese Methode überschreibt Object.ToString.This method overrides Object.ToString.

Gilt für: