Olá. Tenho a seguinte situação: criei uma classe Cliente
public class Cliente:Endereco
{
public int Codigo { get; set; }
public string Nome { get; set; }
public string Cpf { get; set; }
public Endereco EnderecoEntrega { get; set; }
public Endereco EnderecoCobranca { get; set; }
public Cliente(int codigo, string nome, string cpf, int tipoEndereco): base(tipoEndereco)
{
Codigo = codigo;
Nome = nome;
Cpf = cpf;
TipoEndereco = tipoEndereco;
}
}
que herda a classe Endereço
public abstract class Endereco
{
public int TipoEndereco { get; set; } //1 onde reside - 2 cobranca - 3 entrega
public string EnderecoCli { get; set; }
public string Numero { get; set; }
public string Complemento { get; set; }
public string Bairro { get; set; }
public string Cidade { get; set; }
public string Estado { get; set; }
public string Pais { get; set; }
public Endereco (int tipoEndereco)
{
TipoEndereco = tipoEndereco;
}
}
A minha questão é a seguinte:
O endereço tipo 1, será informado na herança. Os endereços tipo 2 (de cobranca) e o tipo 3 (de entrega) serão propriedades informadas quando criada um novo cliente. Porém, eu quero que os endereços tipo 2 e 3 sejam implementados todas as vezes que eu instanciar o cliente. Como que eu faço para garantir isso?