Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rafaelsouzab

[Resolvido] C# Aplicação em Camadas

Recommended Posts

Boa tarde,

 

Estou desenvolvendo uma aplicação em 3 camadas e estou com uma duvida na parte do sistema que eu tenho um modelo de Tarefas, e essas tarefas possuem algumas prioridades, porem no banco de dados eu separei a tabela tarefas de prioridades, gostaria de saber se estaria fugindo muito do conceito de uma aplicação em 3 camadas se eu deixasse as propriedades das prioridades no modelo Tarefas. então basicamente esta separado e relacionado no banco de dados porem no sistema esta tudo no mesmo modelo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai é conceito de Orientação a Objetos, não arquitetura (3 camadas, mvc, etc).

O sistema tem os modelos, e os modelos é o espelho do banco, ou seja cada tabela do banco deve ser representada por uma classe na aplicação, cada coluna da tabela ser uma propriedade nessa classe.

 

Imagina, você vê uma coisa no banco, ai vai fazer um crud de uma tabela, ai na aplicação essa tabela tem uma propriedade em cada Model. Fica confuso, desorganizado e tudo mais...

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 11/07/2017 at 14:07, itlpps disse:

Ai é conceito de Orientação a Objetos, não arquitetura (3 camadas, mvc, etc).

O sistema tem os modelos, e os modelos é o espelho do banco, ou seja cada tabela do banco deve ser representada por uma classe na aplicação, cada coluna da tabela ser uma propriedade nessa classe.

 

Imagina, você vê uma coisa no banco, ai vai fazer um crud de uma tabela, ai na aplicação essa tabela tem uma propriedade em cada Model. Fica confuso, desorganizado e tudo mais...

 

Agora uma outra dúvida, eu tenho os modelos, database e Negocio, para cada tabela eu devo ter uma classe para cada camada? No exemplo citado a cima eu vou ter uma classe de database e uma de negocio para cada tabela no banco de dados também ? ou eu posso ter apenas os modelos ? 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exato. Cada camada vai ter um classe referente a cada model, pra deixar as regras de negócios separadas para as devidas necessidades de cada objeto.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Boa tarde, pessoal.
      Espero que todos estejam bem.
       
      Seguinte:
      Tenho a seguinte consulta:
       
      $usuarios= "SELECT * FROM usuarios";
      $query= mysqli_query($conexao, $usuarios) or die ("Usuário não encontrado");
      $usuario = mysqli_fetch_array($query);
       
      Quero pegar apenas o campo 'nome' da tabela 'usuarios' e colocar todos os resultados da seguinte forma:
       
      $nomes = array("Rafael", "João", "Maria", "Pedro", "Patricia", "Camila");
       
      Agradeço desde já.
      Abs
       
       
    • Por FabianoSouza
      Tenho uma function que precisa receber 02 argumentos.
      Ela funciona se eu aplicar num select qualquer. Mas se eu aplicar num select dinâmico, ocorre erro.
      Veja trecho do meu select.
      ... SET @sql = @sql +', dbo.retornaIco_ItemBloq((SELECT COUNT(*) FROM dbo.tab AS TT2 WHERE TT2.codCategTreina = CTT.id),'+@title+') AS ''resp''' ... No caso, o primeiro argumento da function dbo.retornaIco_ItemBloq é um SELECT COUNT.
      O segundo argumento é uma variável (que está devidamente declarada e definida).
       
      O erro ocorre porque ao executar (chamando EXEC(@sql) ), o SQL entende que o segundo argumento é uma coluna da consulta principal, pois existe uma vírgula antes da variável @title (que é o segundo argumento da function).
      Repito. Se eu aplicar essa function num select normal, funciona normalmente. Porém, preciso que funcione num SQL dinâmico porque é esse é o padrão que estou adotando para o sistema todo.
       
      A function dbo.retornaIco_ItemBloq faz o seguinte:
      1) Recebe o valor do COUNT e da variável @title
      2) Se o COUNT for maior que  Zero, cria uma tag HTML (uma SPAN), define sua title com o valor da variável @title e passa para uma variável
      3) Retorna o HTML que será exibido no resultado da consulta principal
      É super simples.
       
      Há outra forma de chamar a function?
    • Por mr22robot
      Ola caros amigos. 
      Estou com uma dúvida aqui que embora nao tenho achado ainda uma resposta, acredito que haja.
      Estou estudando a tão sonhada linguagem de programação asp.net core mvc. Linguagem essa que demorei 5 anos pra iniciar os estudos rsrs.
      Mas estou agarrado em uma situação. 
      Estou usando como base de dados nos meus estudos um banco Oracle. Que já tem algumas informações nele. Utilizei o SCAFFOLD para criar as classes e o contexto baseado no banco e tabelas existentes. 
      Porem agora na fase das consultas, estou perdido em como utilizar o IN que eu utilizo no oracle; no LINQ.
      Ex: 
      SELECT CODPROD,DESCRICAO FROM PRODUTO WHERE CODPROD IN(1,2,3,4,5,6) Como eu utilizo esse filtro com uma restrição de códigos de produtos? no caso o where codprod in(1,2,3,4,5,6) ?.
      Desde já obrigado pela ajuda.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.