Baixe o app para aproveitar ainda mais
Prévia do material em texto
Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 1 Exibindo a consulta de estoques: <!DOCTYPE html> <html ng-app="appEstoque"> <head> <meta charset="utf-8" /> <title></title> <link href="../../Content/bootstrap.min.css" rel="stylesheet" /> </head> <body class="container"> <h2>Consulta de Estoques</h2> <a href="/index.html">Página inicial</a> <hr/> <div ng-controller="estoqueConsulta"> <table class="table table-hover table-bordered" ng-init="consultar()"> <thead> <tr> <th>Código</th> <th>Nome do Estoque</th> <th>Operações</th> </tr> </thead> <tbody> <tr ng-repeat="e in estoques"> <td>{{e.IdEstoque}}</td> <td>{{e.Nome}}</td> <td> <button class="btn btn-primary btn-sm" data-target="#janelaedicao" data-toggle="modal"> Atualizar </button> <button class="btn btn-danger btn-sm" data-target="#janelaexclusao" data-toggle="modal"> Excluir </button> </td> </tr> </tbody> <tfoot> <tr> <td colspan="3"> Quantidade de registros: {{estoques.length}} </td> </tr> </tfoot> </table> </div> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 2 <script src="../../Scripts/jquery-3.0.0.min.js"></script> <script src="../../Scripts/bootstrap.min.js"></script> <script src="../../Scripts/angular.min.js"></script> <script> var app = angular.module('appEstoque', []); app.controller('estoqueConsulta', function ($scope, $http) { //função para executar o serviço de consulta na API $scope.consultar = function () { //executar o serviço da API.. $http.get("http://localhost:51269/api/estoque/consultar") .then(function (d) { //capturar o resultado (lista) $scope.estoques = d.data; //JSON ARRAY.. }) .error(function (e) { console.log(e); }) }; }) </script> </body> </html> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 3 Filtrando resultados: <!DOCTYPE html> <html ng-app="appEstoque"> <head> <meta charset="utf-8" /> <title></title> <link href="../../Content/bootstrap.min.css" rel="stylesheet" /> </head> <body class="container"> <h2>Consulta de Estoques</h2> <a href="/index.html">Página inicial</a> <hr/> <div ng-controller="estoqueConsulta"> <!-- INICIO --> <div class="row"> <div class="col-md-3"> <label>Filtrar Estoques:</label> <input type="text" class="form-control" placeholder="Digite aqui" ng-model="filtro"/> </div> <div class="col-md-3"> <label>Ordenar Registros:</label> <select class="form-control" ng-model="ordenacao"> <option value="">Selecione</option> <option value="IdEstoque">Código</option> <option value="Nome">Nome do Estoque</option> </select> </div> </div> <!-- FIM --> <br/> <table class="table table-hover table-bordered" ng-init="consultar()"> <thead> <tr> <th>Código</th> <th>Nome do Estoque</th> <th>Operações</th> </tr> </thead> <tbody> <tr ng-repeat="e in estoques | filter : filtro | orderBy : ordenacao"> <td>{{e.IdEstoque}}</td> <td>{{e.Nome}}</td> <td> <button class="btn btn-primary btn-sm" data-target="#janelaedicao" data-toggle="modal"> Atualizar </button> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 4 <button class="btn btn-danger btn-sm" data-target="#janelaexclusao" data-toggle="modal"> Excluir </button> </td> </tr> </tbody> <tfoot> <tr> <td colspan="3"> Quantidade de registros: {{(estoques | filter : filtro).length}} </td> </tr> </tfoot> </table> </div> <script src="../../Scripts/jquery-3.0.0.min.js"></script> <script src="../../Scripts/bootstrap.min.js"></script> <script src="../../Scripts/angular.min.js"></script> <script> var app = angular.module('appEstoque', []); app.controller('estoqueConsulta', function ($scope, $http) { //função para executar o serviço de consulta na API $scope.consultar = function () { //executar o serviço da API.. $http.get("http://localhost:51269/api/estoque/consultar") .then(function (d) { //capturar o resultado (lista) $scope.estoques = d.data; //JSON ARRAY.. }) .error(function (e) { console.log(e); }) }; }) </script> </body> </html> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 5 Implementando exclusão e edição: <!DOCTYPE html> <html ng-app="appEstoque"> <head> <meta charset="utf-8" /> <title></title> <link href="../../Content/bootstrap.min.css" rel="stylesheet" /> </head> <body class="container"> <h2>Consulta de Estoques</h2> <a href="/index.html">Página inicial</a> <hr/> <div ng-controller="estoqueConsulta"> <!-- INICIO --> <div class="row"> <div class="col-md-3"> <label>Filtrar Estoques:</label> <input type="text" class="form-control" placeholder="Digite aqui" ng-model="filtro"/> </div> <div class="col-md-3"> <label>Ordenar Registros:</label> <select class="form-control" ng-model="ordenacao"><option value="">Selecione</option> <option value="IdEstoque">Código</option> <option value="Nome">Nome do Estoque</option> </select> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 6 </div> </div> <!-- FIM --> <br/> <table class="table table-hover table-bordered" ng-init="consultar()"> <thead> <tr> <th>Código</th> <th>Nome do Estoque</th> <th>Operações</th> </tr> </thead> <tbody> <tr ng-repeat="e in estoques | filter : filtro | orderBy : ordenacao"> <td>{{e.IdEstoque}}</td> <td>{{e.Nome}}</td> <td> <button class="btn btn-primary btn-sm" data-target="#janelaedicao" data-toggle="modal" ng-click="obter(e.IdEstoque)"> Atualizar </button> <button class="btn btn-danger btn-sm" data-target="#janelaexclusao" data-toggle="modal" ng-click="obter(e.IdEstoque)"> Excluir </button> </td> </tr> </tbody> <tfoot> <tr> <td colspan="3"> Quantidade de registros: {{(estoques | filter : filtro).length}} </td> </tr> </tfoot> </table> <!-- JANELA DE EDIÇÃO --> <div id="janelaedicao" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header bg-primary"> <h3 class="text-white">Atualizar Estoque</h3> </div> <div class="modal-body"> <label>Código:</label> <input type="text" class="form-control" readonly="readonly" Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 7 ng-model="estoque.IdEstoque"/> <br/> <label>Nome do Estoque:</label> <input type="text" class="form-control" ng-model="estoque.Nome"/> <br/> <div class="alert alert-primary" ng-show="mensagemEdicao"> {{mensagemEdicao}} </div> </div> <div class="modal-footer"> <button class="btn btn-info" data-dismiss="modal"> Fechar Janela </button> <button class="btn btn-primary" ng-click="atualizar()"> Atualizar Dados </button> </div> </div> </div> </div> <!-- FIM DA JANELA --> <!-- JANELA DE EXCLUSÂO --> <div id="janelaexclusao" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header bg-danger"> <h3 class="text-white">Excluir Estoque</h3> </div> <div class="modal-body"> Deseja realmente excluir este estoque? <hr/> Código: <strong>{{estoque.IdEstoque}}</strong> <br/> Nome do Estoque: <strong>{{estoque.Nome}}</strong> <br/> <br/> <div class="alert alert-danger" ng-show="mensagemExclusao"> {{mensagemExclusao}} </div> </div> <div class="modal-footer"> <button class="btn btn-info" data-dismiss="modal"> Fechar Janela </button> <button class="btn btn-danger" ng-click="excluir()"> Excluir Estoque </button> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 8 </div> </div> </div> </div> <!-- FIM DA JANELA --> </div> <script src="../../Scripts/jquery-3.0.0.min.js"></script> <script src="../../Scripts/bootstrap.min.js"></script> <script src="../../Scripts/angular.min.js"></script> <script> var app = angular.module('appEstoque', []); app.controller('estoqueConsulta', function ($scope, $http) { //função para executar o serviço de consulta na API $scope.consultar = function () { //executar o serviço da API.. $http.get("http://localhost:51269/api/estoque/consultar") .then(function (d) { //capturar o resultado (lista) $scope.estoques = d.data; //JSON ARRAY.. }) .catch(function (e) { console.log(e); }) }; //função para buscar 1 estoque pelo id.. $scope.obter = function (id) { $scope.mensagemEdicao = ""; $scope.mensagemExclusao = ""; //executar o serviço da API.. $http.get("http://localhost:51269 /api/estoque/consultarporid?id=" + id) .then(function (d) { $scope.estoque = d.data; }) .catch(function (e) { console.log(e); }); }; //função para atualizar os dados do estoque.. $scope.atualizar = function () { //executar o serviço da API.. $http.put("http://localhost:51269 /api/estoque/atualizar", $scope.estoque) .then(function (d) { $scope.mensagemEdicao = d.data; $scope.consultar(); }) Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 9 .catch(function (e) { console.log(e); }); }; //função para excluir o estoque selecionado.. $scope.excluir = function () { //executar o serviço da API.. $http.delete("http://localhost:51269 /api/estoque/excluir?id=" + $scope.estoque.IdEstoque).then(function (d) { $scope.mensagemExclusao = d.data; $scope.consultar(); }) .catch(function (e) { console.log(e); }); }; }) </script> </body> </html> Executando: Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 10 Criando a página de cadastro de produto: <!DOCTYPE html> <html ng-app="appProduto" ng-cloak> <head> <meta charset="utf-8" /> <title></title> <link href="../../Content/bootstrap.min.css" rel="stylesheet" /> </head> <body class="container"> <h2>Cadastro de Produtos</h2> <a href="/index.html">Página inicial</a> <hr /> <div class="row" ng-controller="produtoCadastro"> <div class="col-md-4"> <label>Nome do Produto:</label> <input type="text" class="form-control" placeholder="Digite aqui" ng-model="produto.Nome" /> <span class="text-danger"> {{erroNome}} </span> <br /> <label>Preço:</label> <input type="text" class="form-control" placeholder="Digite aqui" Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 11 ng-model="produto.Preco" /> <span class="text-danger"> {{erroPreco}} </span> <br /> <label>Quantidade:</label> <input type="text" class="form-control" placeholder="Digite aqui" ng-model="produto.Quantidade" /> <span class="text-danger"> {{erroQuantidade}} </span> <br /> <label>Selecione o Estoque:</label> <select class="form-control" ng-init="consultarEstoques()" ng-model="produto.IdEstoque"> <option value="">Escolha uma opção</option> <option ng-repeat="e in estoques" value="{{e.IdEstoque}}"> {{e.Nome}} </option> </select> <span class="text-danger"> {{erroIdEstoque}} </span> <br/> <button class="btn btn-success" ng-click="cadastrar()"> Cadastrar Produto </button> <br /> <br /> <strong>{{mensagem}}</strong> </div> </div> <script src="../../Scripts/jquery-3.0.0.min.js"></script> <script src="../../Scripts/bootstrap.min.js"></script> <script src="../../Scripts/angular.min.js"></script> <script> //criar um app Angular -> 'appProduto' var app = angular.module('appProduto', []); //criar um controller -> 'produtoCadastro' app.controller('produtoCadastro', function ($scope, $http) { //declarando um JSON $scope.produto = { Nome : "", Preco : "", Quantidade : "", IdEstoque : "" }; Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 12 //função para consultar os estoques $scope.consultarEstoques = function () { $http.get("http://localhost:51269/api/estoque/consultar") .then(function (d) { $scope.estoques = d.data; }) .catch(function (e) { console.log(e); }); }; //criando uma função para ser executada //quando o botão de cadastro for clicado $scope.cadastrar = function () { //gerando uma mensagem.. $scope.mensagem = "Processando..."; $scope.erroNome = ""; $scope.erroPreco = ""; $scope.erroQuantidade = ""; $scope.erroIdEstoque = ""; //requisição para a API.. $http.post("http://localhost:51269/api/produto/cadastrar", $scope.produto) .then(function (d) { //Sucesso OK (200) //exibindo a mensagem $scope.mensagem = d.data; //limpando o campo de texto $scope.produto.Nome = ""; $scope.produto.Preco = ""; $scope.produto.Quantidade = ""; $scope.produto.IdEstoque = ""; }) .catch(function (e) { //Erro (400, 500, etc...) if (e.status == 400){ //bad request //erro de validação $scope.erroNome = e.data["model.Nome"]; $scope.erroPreco = e.data["model.Preco"]; $scope.erroQuantidade = e.data ["model.Quantidade"]; $scope.erroIdEstoque = e.data["model.IdEstoque"]; $scope.mensagem = ""; } else { $scope.mensagem = e.data; } }); }; }); </script> </body> </html> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 13 Executando: Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 14 <!DOCTYPE html> <html ng-app="appEstoque"> <head> <meta charset="utf-8" /> <title></title> <link href="../../Content/bootstrap.min.css" rel="stylesheet" /> </head> <body class="container"> <h2>Consulta de Estoques</h2> <a href="/index.html">Página inicial</a> <hr/> <div ng-controller="estoqueConsulta"> <!-- INICIO --> <div class="row"> <div class="col-md-3"> <label>Filtrar Estoques:</label> <input type="text" class="form-control" placeholder="Digite aqui" ng-model="filtro"/> </div> <div class="col-md-3"> <label>Ordenar Registros:</label> <select class="form-control" ng-model="ordenacao"> <option value="">Selecione</option> <option value="IdEstoque">Código</option> <option value="Nome">Nome do Estoque</option> </select> </div> </div> <!-- FIM --> <br/> <table class="table table-hover table-bordered" ng-init="consultar()"> <thead> <tr> <th>Código</th> <th>Nome do Estoque</th> <th>Operações</th> </tr> </thead> <tbody> <tr ng-repeat="e in estoques | filter : filtro | orderBy : ordenacao"><td>{{e.IdEstoque}}</td> <td>{{e.Nome}}</td> <td> <button class="btn btn-primary btn-sm" data-target="#janelaedicao" data-toggle="modal" ng-click="obter(e.IdEstoque)"> Atualizar </button> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 15 <button class="btn btn-danger btn-sm" data-target="#janelaexclusao" data-toggle="modal" ng-click="obter(e.IdEstoque)"> Excluir </button> </td> </tr> </tbody> <tfoot> <tr> <td colspan="3"> Quantidade de registros: {{(estoques | filter : filtro).length}} </td> </tr> </tfoot> </table> <!-- JANELA DE EDIÇÃO --> <div id="janelaedicao" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header bg-primary"> <h3 class="text-white">Atualizar Estoque</h3> </div> <div class="modal-body"> <label>Código:</label> <input type="text" class="form-control" readonly="readonly" ng-model="estoque.IdEstoque"/> <br/> <label>Nome do Estoque:</label> <input type="text" class="form-control" ng-model="estoque.Nome"/> <br/> <div class="alert alert-primary" ng-show="mensagemEdicao"> {{mensagemEdicao}} </div> </div> <div class="modal-footer"> <button class="btn btn-info" data-dismiss="modal"> Fechar Janela </button> <button class="btn btn-primary" ng-click="atualizar()"> Atualizar Dados </button> </div> </div> </div> </div> <!-- FIM DA JANELA --> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 16 <!-- JANELA DE EXCLUSÂO --> <div id="janelaexclusao" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header bg-danger"> <h3 class="text-white">Excluir Estoque</h3> </div> <div class="modal-body"> Deseja realmente excluir este estoque? <hr/> Código: <strong>{{estoque.IdEstoque}}</strong> <br/> Nome do Estoque: <strong>{{estoque.Nome}}</strong> <br/> <br/> <div class="alert alert-danger" ng-show="mensagemExclusao"> {{mensagemExclusao}} </div> </div> <div class="modal-footer"> <button class="btn btn-info" data-dismiss="modal"> Fechar Janela </button> <button class="btn btn-danger" ng-click="excluir()"> Excluir Estoque </button> </div> </div> </div> </div> <!-- FIM DA JANELA --> </div> <script src="../../Scripts/jquery-3.0.0.min.js"></script> <script src="../../Scripts/bootstrap.min.js"></script> <script src="../../Scripts/angular.min.js"></script> <script> var app = angular.module('appEstoque', []); app.controller('estoqueConsulta', function ($scope, $http) { //função para executar o serviço de consulta na API $scope.consultar = function () { //executar o serviço da API.. $http.get("http://localhost:51269/api/estoque/consultar") .then(function (d) { Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 17 //capturar o resultado (lista) $scope.estoques = d.data; //JSON ARRAY.. }) .catch(function (e) { console.log(e); }) }; //função para buscar 1 estoque pelo id.. $scope.obter = function (id) { $scope.mensagemEdicao = ""; $scope.mensagemExclusao = ""; //executar o serviço da API.. $http.get("http://localhost:51269 /api/estoque/consultarporid?id=" + id) .then(function (d) { $scope.estoque = d.data; }) .catch(function (e) { console.log(e); }); }; //função para atualizar os dados do estoque.. $scope.atualizar = function () { //executar o serviço da API.. $http.put("http://localhost:51269 /api/estoque/atualizar", $scope.estoque) .then(function (d) { $scope.mensagemEdicao = d.data; $scope.consultar(); }) .catch(function (e) { console.log(e); }); }; //função para excluir o estoque selecionado.. $scope.excluir = function () { //executar o serviço da API.. $http.delete("http://localhost:51269 /api/estoque/excluir?id=" + $scope.estoque.IdEstoque) .then(function (d) { $scope.mensagemExclusao = d.data; $scope.consultar(); }) .catch(function (e) { console.log(e); }); }; }) </script> </body> </html> Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 18 Executando: Treinamento em C# WebDeveloper Aula 20 Segunda-feira, 17 de Dezembro de 2018 Acesso a banco de dados com EntityFramework. Desenvolvimento com Asp.Net WebApi 19
Compartilhar