Gå til indholdet

N260 Polymorfi (Faktura)

Du skal skabe en konsol applikation med en klasse Faktura. Den skal bestå af egenskaberne

  • Nr (int)
  • Dato (DateTime)
  • Kunde (string)

Prøv at skabe en instans af klassen og brug ToString() til at skrive ud på konsolen. Den burde udskrive navnet på typen.

Tilføj nu en overskrevet version af ToString der returnerer “Faktura til {Kunde} nr {Nr} fra {Dato}”. Prøv eventuel en JSON serialisering med følgene:

string jsonString;
jsonString = System.Text.Json.JsonSerializer.Serialize(this);

Prøv at køre programmet igen - giver ToString mere mening nu?

Klik for at se et forslag til en løsning
using System;
//using System.Text.Json; // Kun til JSON (ekstra opgaven)

namespace Poly
{
    class Program
    {
        static void Main(string[] args)
        {

            Faktura f = new Faktura() { Nr = 1, Kunde = "abc", Dato = DateTime.Now.Date };
            Console.WriteLine(f.ToString());

        }
    }

    class Faktura
    {
        public int Nr { get; set; }
        public string Kunde { get; set; }
        public DateTime Dato { get; set; }

        public override string ToString()
        {
            return $"Faktura til {Kunde} nr {Nr} fra {Dato:D}.";
        }

        // public override string ToString()
        // {
        //    return JsonSerializer.Serialize(this);
        // }
    }

}