Hvis vi kikker på den første kode stykke så har vi en klasse som er bygget på public variabler som vi nemt kan skrive og læse fra.
- public class Person
- {
- public int ID;
- public string Firstname;
- public string Surname;
- }
I den næste stykke kode har vi lavet dem om til properties hvilket betyder vi nu har mulighed for at korrigere de værdier der skrives og læses. i dette tilfælde har jeg valgt at gøre så vi kun offentligt kan læse ID (eks. hvis den kommer fra databasen) offentligt men at vi har fuldmulighed for at ændre id internt fra klassen.
- public class Person
- {
- public int ID { get; private set;}
- public string Firstname { get; set; }
- public string Surname { get; set; }
- }
Som udvidelse kunne man tænke at vi måske ønskede at lowecase hele fornavnet og efterfølgende uppercase for bokstavet som her. forskellen er dog at når vi så ønsker at lave forbehold for læsning og skrivning er vi nød til at skrive til en variable istedet.
- public class Person
- {
- private string _firstname;
-
- public int ID { get; private set;}
- public string Firstname
- {
- get
- {
- return this._firstname;
- }
-
- set
- {
- if(!string.IsNullOrEmpty(value))
- {
- value = char.ToUpper(value[0]) + value.Substring(1).ToLower();
- }
-
- this._firstname = value;
- }
- }
-
- public string Surname { get; set; }
- }
Jeg håber det giver mening?