No C# 6, é possível deixar o código bastante enxuto informando o valor default para uma propriedade diretamente na sua declaração, sem o uso de construtor para aquela classe, veja só como é simples:
namespace AutoPropertyInitializer
{
public class Carro
{
public string Marca { get; set; } = "Sem marca especificada";
public string Modelo { get; set; } = "Sem modelo especificado";
public string Chassi { get; set; } = "Sem chassi especificado";
public DateTime DataGeracao { get; set; } = DateTime.Now;
}
class Program
{
static void Main(string[] args)
{
var c = new Carro();
var interpolation = $"O carro {c.Modelo} da marca {c.Marca} possui o chassi nº {c.Chassi} e foi fabricado em {c.DataGeracao}";
Console.WriteLine(interpolation);
//resultado:
//O carro Sem modelo especificado da marca Sem marca especificada possui o chassi nº Sem chassi especificado e foi fabricado em 16/04/2016 10:34:24
Console.ReadKey();
}
}
}
Neste exemplo eu utilizei também a funcionalidade de string interpolation que é bastante útil durante a concatenação de strings. Viu só que bacana esta pequena funcionalidade?
Um grande abraço e até a próxima!
