ValueType.ToString ValueType.ToString ValueType.ToString ValueType.ToString Method

Definizione

Restituisce il nome completo del tipo di questa istanza.Returns the fully qualified type name of this instance.

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

Restituisce

Nome completo del tipo.The fully qualified type name.

Commenti

Il ValueType.ToString metodo esegue l' Object.ToString override del metodo e fornisce ToString l'implementazione predefinita del metodo per i tipi di valore.The ValueType.ToString method overrides the Object.ToString method and provides the default implementation of the ToString method for value types. I tipi di valore sono tipi definiti dalla struct parola chiave C#in e da Structure... End Structure costrutto in Visual Basic.) Dal punto di vista funzionale, tuttavia, l'implementazione è identica a Object.ToStringquella di: il metodo restituisce il nome completo del tipo.(Value types are types defined by the struct keyword in C#, and by the Structure...End Structure construct in Visual Basic.) Functionally, however, the implementation is that same as that of Object.ToString: the method returns the fully qualified type name.

Tipi di valore definiti dalla struct parola chiave C# in e Structure... il costrutto in Visual Basic in ValueType.ToString genere esegue l'override del metodo per fornire una rappresentazione di stringa più significativa del tipo di valore. End StructureValue types defined by the struct keyword in C# and the Structure...End Structure construct in Visual Basic typically override the ValueType.ToString method to provide a more meaningful string representation of the value type. Nell'esempio che segue viene illustrata la differenza.The following example illustrates the difference. Definisce due tipi di valore, EmployeeA e EmployeeB, crea un'istanza di ogni oggetto e chiama il ToString relativo metodo.It defines two value types, EmployeeA and EmployeeB, creates an instance of each, and calls its ToString method. Poiché la EmployeeA struttura non esegue l'override ValueType.ToString del metodo, viene visualizzato solo il nome completo del tipo.Because the EmployeeA structure does not override the ValueType.ToString method, it displays only the fully qualified type name. Il EmployeeB.ToString metodo, d'altra parte, fornisce informazioni significative sull'oggetto.The EmployeeB.ToString method, on the other hand, provides meaningful information about the object.

using System;
using Corporate.EmployeeObjects;

public class Example
{
   public static void Main()
   {
      var empA = new EmployeeA{ Name = "Robert",};
      Console.WriteLine(empA.ToString());
      
      var empB = new EmployeeB{ Name = "Robert",};
      Console.WriteLine(empB.ToString());
   }
}

namespace Corporate.EmployeeObjects
{
    public struct EmployeeA
    {
         public String Name { get; set; }
    }
    
    public struct EmployeeB
    {
         public String Name { get; set; }

         public override String ToString()
         {
              return Name;
         }
    }  
}
// The example displays the following output:
//     Corporate.EmployeeObjects.EmployeeA
//     Robert
Imports Corporate.EmployeeObjects

Module Example
   Public Sub Main()
      Dim empA As New EmployeeA With { .Name = "Robert" }
      Console.WriteLine(empA.ToString())
      
      Dim empB = new EmployeeB With { .Name = "Robert" }
      Console.WriteLine(empB.ToString())
   End Sub
End Module

Namespace Corporate.EmployeeObjects
    Public Structure EmployeeA
         Public Property Name As String 
    End Structure
    
    Public Structure EmployeeB
         Public Property Name As String 

         Public Overrides Function ToString() As String 
              Return Name
         End Function
    End Structure  
End Namespace
' The example displays the following output:
'     Corporate.EmployeeObjects.EmployeeA
'     Robert

Si noti che, sebbene i Enum tipi di enumerazione siano anche tipi valore, derivano dalla classe, che esegue l'override ValueType.ToStringdi.Note that, although enumeration types are also value types, they derive from the Enum class, which overrides ValueType.ToString.

Note per il Windows RuntimeNotes for the Windows Runtime

Quando si chiama il ToString metodo su una Windows RuntimeWindows Runtime struttura, fornisce il comportamento predefinito per i tipi di valore che non ToStringeseguono l'override di.When you call the ToString method on a Windows RuntimeWindows Runtime structure, it provides the default behavior for value types that don't override ToString. Questo è parte del supporto fornito dal .NET Framework per (vedere Windows RuntimeWindows Runtime .NET Framework supporto per le app di Windows Store e Windows Runtime).This is part of the support that the .NET Framework provides for the Windows RuntimeWindows Runtime (see .NET Framework Support for Windows Store Apps and Windows Runtime). Windows RuntimeWindows Runtimele strutture non ToStringpossono eseguire l'override di, anche C# se sono scritte con o Visual Basic, perché non possono avere metodi.structures can't override ToString, even if they're written with C# or Visual Basic, because they can't have methods. Inoltre, le Windows RuntimeWindows Runtime strutture in non ereditano ValueType. Tuttavia ToString, sembrano avere metodi, Equalse GetHashCode quando vengono usati nel codice C# o Visual Basic e il .NET Framework fornisce il comportamento predefinito per questi metodi.(In addition, structures in the Windows RuntimeWindows Runtime itself don't inherit ValueType.) However, they appear to have ToString, Equals, and GetHashCode methods when you use them in your C# or Visual Basic code, and the .NET Framework provides the default behavior for these methods.

Si applica a