Notizen
ClienteService(namespace DS.SysWeb.Dominio.Services )
Inhalt der Notizen (1)
Seite 1
using System; //A Camada De Dominio Não Vê Ninguém! Ela só enxerga a ela Mesma.Eu Vou Ter Que Trabalhar Com Base Nas Interfaces, E
using DS.SysWeb.Dominio.Interfaces; // é Por Esse Motivo que as Interfaces estão Na Camada de Dominio
using DS.SysWeb.Dominio.Models;
namespace DS.SysWeb.Dominio.Services
{
public class ClienteService : IClienteService
{
private readonly IClienteRepository _clienteRepository;
//DIP:Principio Da Inversao De Controle
public ClienteService(IClienteRepository clienteRepository)
{
_clienteRepository = clienteRepository; ////Eu Estou Querendo Dizer Que Eu Só Vou Receber a Instância de Uma Classe Que Implemente a Interface clienteRepository
}
public Cliente Adicionar(Cliente cliente)
{
if (!cliente.EhValido())
return cliente;
// se ele tem email ou cpf ja existente na base
// se ele tem idade para ser cliente
// add ele no banco
return _clienteRepository.Adicionar(cliente); //Porque Eu Dou Um Return do _ClienteRepository? Porque O Método Adicionar Retorna Um Cliente
}
public Cliente Atualizar(Cliente cliente)
{
if (!cliente.EhValido())
return cliente;
return _clienteRepository.Atualizar(cliente);
}
public void Remover(Guid id)
{
// tem alguma regra antes de excluir? Por Ex: Tem Um Compra Em Aberto.Qualquer Coisa Que Precise Validar
_clienteRepository.Remover(id);
}
public void Dispose()
{
_clienteRepository.Dispose();//To Destruindo o Repository
}
}
}
//O Que é Injeção De Dependência? è você injetar Via COnstrutor Um Objeto Já Instanciado Para Que A Classe Mesmo Se Conheçer Consiga Manipular o Objeto
Informationen
- Beschreibung
- Notiz am ClienteService(namespace DS.SysWeb.Dominio.Services ), erstellt von Lauro Vinicius am 04/04/2018.
- Erstellt von
- Lauro Vinicius
- Aufrufe
- 0
- Bewertung