Exception.ToString Metoda

Definicja

Tworzy i zwraca reprezentację ciągu bieżącego wyjątku.

C#
public override string ToString ();

Zwraca

String

Reprezentacja ciągu bieżącego wyjątku.

Implementuje

Przykłady

Poniższy przykład powoduje wyjątek i wyświetla wynik wywołania ToString tego wyjątku. Należy pamiętać, że Exception.ToString metoda jest wywoływana niejawnie, gdy wystąpienie klasy Exception pojawia się na liście argumentów Console.WriteLine metody.

C#
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

Uwagi

ToString zwraca reprezentację bieżącego wyjątku, który ma być zrozumiały dla ludzi. Jeśli wyjątek zawiera dane wrażliwe na kulturę, reprezentacja ciągu zwrócona przez ToString jest wymagana do uwzględnienia bieżącej kultury systemu. Chociaż nie ma dokładnych wymagań dotyczących formatu zwracanego ciągu, należy spróbować odzwierciedlić wartość obiektu postrzeganego przez użytkownika.

Domyślna implementacja ToString uzyskuje nazwę klasy, która zwróciła bieżący wyjątek, komunikat, wynik wywołania ToString wyjątku wewnętrznego i wynik wywołania wywołania Environment.StackTrace. Jeśli którykolwiek z tych elementów członkowskich to null, jego wartość nie jest uwzględniona w zwracanym ciągu.

Jeśli nie ma komunikatu o błędzie lub jeśli jest to pusty ciąg (""), nie zostanie zwrócony żaden komunikat o błędzie. Nazwa wyjątku wewnętrznego i ślad stosu są zwracane tylko wtedy, gdy nie nullsą .

Ta metoda zastępuje Object.ToString.

Dotyczy

Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0