Override di ToString

di il
3 risposte

Override di ToString

Ciao a tutti.

Quando programmavo in java usavo netbeans e avevo una utile funzionalità per cui era possibile generare automaticamente un override di toString() contenente tutti i campi di una classe. In sostanza qualcosa che in c# corrisponde a questo.

class Person
{
    public string Name { get; set; }
    public int Age { get; set; }

    public override string ToString()
    {
        return "Person: Name: " + Name + " Age : " + Age;
    }
}
C'è un modo anche in visual studio per ottenrlo in modo automatico in modo da non doverselo scrivere a mano?

Ciao di nuovo e grazie

3 Risposte

  • Re: Override di ToString

    Se vai qui https://docs.microsoft.com/it-it/dotnet/csharp/programming-guide/classes-and-structs/how-to-override-the-tostring-method c'è lo stesso tuo esempio in C#
  • Re: Override di ToString

    Si, infatti l'avevo preso proprio da lì

    Il punto è che su netbeans avevo una funzionalità che mi generava da solo quel codice in modo automatico, mentre su visual studio devo scrivermelo a manina e su classi con molte proprietà è fastidioso.
  • Re: Override di ToString

    golosauro ha scritto:


    Il punto è che su netbeans avevo una funzionalità che mi generava da solo quel codice in modo automatico, mentre su visual studio devo scrivermelo a manina e su classi con molte proprietà è fastidioso.
    La rappresentazione testuale di un oggetto tendenzialmente può essere sempre diversa, quindi non vedo indispensabile un generatore automatico in questo senso.

    Se proprio ti interessa avere ogni volta una rappresentazione del genere, con tutte le proprietà, allora considera l'eventuale serializzazione dell'oggetto, in formato JSON oppure XML, e invoca il metodo nell'override di ToString() (anche se - a mio avviso - dovrebbe essere il più semplice, corto, indipendente e utile possibile).

    Ciao!
Devi accedere o registrarti per scrivere nel forum
3 risposte