Kako nastaviti privzeto vrednost za lastnost C# ali C# samodejno implementirano lastnost
C# lastnosti ali samodejno implementirane lastnosti se v naših razredih pogosto uporabljajo namesto polj, tj. spremenljivk.
Samodejno implementirane lastnosti so uvedene v C# 3.0.
V tem učbeniku se bomo s preprostimi primeri naučili 4 različne načine za nastavitev privzete vrednosti lastnosti C#.
- Uporaba samodejnih inicializatorjev lastnosti v C# 6
 - Dodelitev privzete vrednosti v konstruktorju
 - Uporaba nastavljalnika lastnosti C#
 - Uporaba 
DefaultValueAttribute && Property Setter 
Kot začetno vrednost lastnosti lahko privzamemo privzeto vrednost v C#.
Metoda 1 : Uporaba samodejnih inicializatorjev lastnosti v C# 6
V C# 6 lahko deklariramo samodejno implementirano lastnost in določimo privzeto vrednost v deklaraciji v eni sami vrstici.
Sintaksa je
class Product{
    public string Name {get;set;} = "";
}
Po privzetem bodo lastnosti nizov imele null vrednost, Z uporabo C# 6 deklaracije v vrstici nastavimo privzeto vrednost kot prazen niz.
Metoda 2: Dodelitev privzete vrednosti v konstruktorju
V starejših različicah C#, C# 5 in nižjih je dobra praksa, da privzete vrednosti lastnosti C# določimo v konstruktorju razreda.
class Product 
{
    public string Name { get; set; }
    public Product()
    {
        Name = "";
    }
}
Metoda 3: Uporaba nastavljalnika lastnosti C#
Za dodelitev privzete vrednosti samodejno implementiranim lastnostim lahko uporabimo C# property setter.
class Product 
{
    private string _name = "";
    public string Name { 
        
        get { return _name;}
        set { _name = value;} 
    }
}
metoda 4: Uporaba DefaultValue Attribute && Property Setter 
V zgornjem primeru smo ustvarili zasebno spremenljivko in ji dodelili privzeto vrednost.
Namesto tega lahko za dodelitev privzete vrednosti uporabimo atribut DefaultValue.
class Product 
{
    private string _name;
    [DefaultValue("")]
    public string Name { 
        
        get { return _name;}
        set { _name = value;} 
    }
}
Ne pozabite, da ** atributDefaultValue deluje samo z nastavljalnikom lastnosti.**
Spodnja koda lastnosti ne bo dodelila privzete vrednosti. Privzeta vrednost je še vedno null.
public class Product
{
    [DefaultValue("")]
    public string Name { get; set; }
}
Če uporabljate atribut DefaultValue, morate uporabiti nastavljalnik lastnosti.
Povzetek
Če uporabljate C# 6, uporabite vrstično deklaracijo za nastavitev privzete vrednosti lastnosti C#. V nasprotnem primeru nastavite privzeto vrednost v konstruktorju.