ASP NET MVC CONSUMO WEB API

 Tópico anterior Próximo tópico Novo tópico

ASP NET MVC CONSUMO WEB API

C#

 Compartilhe  Compartilhe  Compartilhe
#485767 - 04/12/2018 20:36:49

MRSILVA
MARINGA
Cadast. em:Julho/2015


Ol.
Estou com algumas dvidas fico muito grato se algum com experincia no assunto puder me ajudar.

Tenho uma aplicao que camada view e feita em WPF (MVVM) que est consumindo uma WEBAPI (NET CORE).
Estou iniciando meu aprendizado com aplicaes WEB e vou desenvolver um novo projeto ASP NET MVC (NET CORE) vou utilizar com base o meu projeto em WPF (modelos, mtodos CRUD regra de negocio), sei que so duas tecnologias diferentes e o desenvolvimento WEB (MVC) diferente. A minha dvida referente o consumo da minha WEBAPI, vou dar um exemplo:

Registro de um produto utilizando minha WEBAPI  o correto   a minha classe model  que est no meu projeto ASP NET MVC chamar meu mtodo da WEBAPI ou fazer esse registro chamando minha WEBAPI diretamente pelo (cliente) JAVASCRIPT atravs do AJAX (mtodos assicronomos)?  Ou seja,  dessa forma meu projeto ASP NET MVC  em alguns casos serviria apenas para fornecer as visualizaes.  Estou com essa dvida  porque achei sem sentido utilizar em todos os mtodos ter que acessar minhas controller do meu projeto ASP NET MVC (NET CORE) e depois chamar minha outra controller da WEB API?
Caso minha dvida no tenha sentido desculpe  minha falta de conhecimento que estou a semana inteira estudando para iniciar meu projeto da forma correta, e no achei na internet discusso sobre esse assunto.
Desde j agradeo.




Resposta escolhida #485768 - 04/12/2018 21:03:33

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
No sei se voc entendeu bem o que uma WebAPI...
Imagine um mdulo do VB6, que tenha os mtodos:

Public Function IncluiCliente(Codigo As Integer, Nome As String)
///aqui faz toda a parte de cadastrar o cliente

Public Function BuscaCliente(Codigo As Integer) As RecordSet
///Aqui busca um cliente por cdigo



Ento voc pega esse mdulo todo e coloca numa DLL e compila. Da voc referencia a DLL no seu projeto, declara uma varivel com ela e usa:

Dim variavel As MinhaDLL
Set variavel = New MinhaDLL

variavel.IncluiCliente(txtCodigoCliente.Text, txtDescricaoCliente.Text) []Aqui simplesmente cadastra um cliente

Dim rs As New ADODB.RecordSet = variavel.BuscaCliente(99) []Aqui, retornaria um cliente em um recordset


Obviamente omiti o cdigo em si, mas j se pode ter uma noo do que quero dizer. Tipo, assim que voc faria no VB6 para usar uma DLL, certo? Pois ento, uma WebAPI uma idia praticamente igual. A diferena que no tem referncia propriamente dita, voc simplesmente chama os mtodos dela.

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#485769 - 04/12/2018 21:51:24

MRSILVA
MARINGA
Cadast. em:Julho/2015


Kerplunk obrigado pelo retorno.

Sim acredito que sei que uma WEB API, ms no consegui entender a relao do seu exemplo com minha pergunta, no estou com duvidas de como usar a WEBAPI literalmente, isso j fao no meu projeto desktop , mas sim como aplicar a mesma da melhor forma possvel em um projeto WEB com padro MVC, me parece haver uma redundncia em alguns casos  chamar minha WEBAPI no servidor  do projeto MVC sendo que poderia fazer isso diretamente no cliente,  mas no sei se certo ou se posso ter alguma complicao fazer isso diretamente via AJAX.

Desde j agradeo.



#485771 - 04/12/2018 23:55:30

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Ah, agora te entendi. Se a aplicao(client) est no mesmo server, voc poderia perfeitamente gravar e ler []direto[], mas pense que uma WebAPI no um simples CRUD. Nela, pode ter vrias de regras de negcio, controle de direitos de usurio, chamadas outros servios, filas, enfim uma porrada de coisa que, por via de regra, deveria estar em um s lugar e servir para todo e qualquer client.

Entendo seu ponto de vista de parecer meio []exagerado[], mas veja pelo ponto de vista que WebAPI no s repositrio de dados.

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#485784 - 06/12/2018 00:59:16

MRSILVA
MARINGA
Cadast. em:Julho/2015


Mais uma vez obrigado pela ajuda.



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por MRSILVA em 06/12/2018 00:59:29