Exception.ToString Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Geçerli özel durumun dize gösterimini oluşturur ve döndürür.
public:
override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String
Döndürülenler
Geçerli özel durumun dize gösterimi.
Uygulamalar
Örnekler
Aşağıdaki örnek bir özel duruma neden olur ve bu özel durumda çağrının ToString sonucunu görüntüler. Yöntemin Exception.ToString bağımsız değişken listesinde Exception sınıf örneği göründüğünde yönteminin örtük olarak çağrıldığını Console.WriteLine unutmayın.
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
open System
type TestClass() = class end
let test = TestClass()
let objectsToCompare: obj[] =
[| test; test.ToString(); 123
string 123; "some text"
"Some Text" |]
let s = "some text"
for objectToCompare in objectsToCompare do
try
let i = s.CompareTo objectToCompare
printfn $"Comparing '{s}' with '{objectToCompare}': {i}"
with :? ArgumentException as e ->
printfn $"Bad argument: {objectToCompare} (type {objectToCompare.GetType().Name})"
printfn $"Exception information: {e}"
printfn ""
// The example displays the following output:
// Bad argument: Example+TestClass (type TestClass)
// Exception information: System.ArgumentException: Object must be of type String.
// at System.String.CompareTo(Object value)
// at <StartupCode$fs>.$Example.main@()
//
// Comparing 'some text' with 'Example+TestClass': -1
//
// Bad argument: 123 (type Int32)
// Exception information: System.ArgumentException: Object must be of type String.
// at System.String.CompareTo(Object value)
// at <StartupCode$fs>.$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
Açıklamalar
ToString , insanlar tarafından anlaşılması amaçlanan geçerli özel durumun bir gösterimini döndürür. Özel durumun kültüre duyarlı veriler içerdiği durumlarda, tarafından döndürülen ToString
dize gösteriminin geçerli sistem kültürünü hesaba katmak için gereklidir. Döndürülen dizenin biçimi için tam gereksinimler olmasa da, kullanıcı tarafından algılanan nesnenin değerini yansıtmaya çalışmalıdır.
varsayılan uygulaması ToString geçerli özel durumu oluşturan sınıfın adını, iletiyi, iç özel durumda çağırmanın ToString sonucunu ve çağırmanın Environment.StackTracesonucunu alır. Bu üyelerden herhangi biri ise null
, değeri döndürülen dizeye dahil değildir.
Hata iletisi yoksa veya boş bir dizeyse (""), hata iletisi döndürülmedi. İç özel durumun adı ve yığın izlemesi yalnızca değilse null
döndürülür.
Bu yöntem geçersiz kılar Object.ToString.