Fenix - C# - Cadastros Base

T2Ti

Servidor


Nos vídeos abaixo iniciamos a construção do servidor C# do T2Ti ERP Fenix. Nesses vídeos iniciais vamos focar no entendimento de como consumir o servidor de modo que ele devolva arquivos JSON para o cliente e como podemos enviar objetos JSON que possam ser consumidos pelo servidor com a devida persistência no banco de dados.

Introdução


Objetivos do treinamento.

É necessário fazer o login no site para assistir este vídeo


Novo Servidor


Construimos o novo servidor usando o Visual Studio 2019 e realizamos testes com e sem SSL usando navegadores e o Postman.

É necessário fazer o login no site para assistir este vídeo


Migrando o SisCom


Migramos o código do servidor do SisCom e testamos o Cargo no novo servidor usando o Postman.

É necessário fazer o login no site para assistir este vídeo


Arrumando a Casa


Alterando os alguns aspectos nos arquivos do Cargo para melhoria no código.

É necessário fazer o login no site para assistir este vídeo


Banco


Desenvolvendo as classes para o CRUD Banco.

É necessário fazer o login no site para assistir este vídeo


Pessoa


Desenvolvendo as classes para o CRUD Pessoa.

É necessário fazer o login no site para assistir este vídeo


Pessoa Jurídica


Alterando o controller da Pessoa para lidar com o objeto PessoaJuridica.

É necessário fazer o login no site para assistir este vídeo


Pessoa Contato


Alterando o controller da Pessoa para lidar com a lista de objetos PessoaContato.

É necessário fazer o login no site para assistir este vídeo


Exercícios


Considerações finais e explicações sobre os exercícios.

É necessário fazer o login no site para assistir este vídeo


Banco Completo


Nos vídeos abaixo concluímos a implementação do Banco com o CRUD completo, tratamento de erros e o controle do filtro.

Controller


Alterações no controller para que seja possível utilizar os quatro métodos REST: GET, PUT, POST e DELETE. Remoção do ID no método PUT.

É necessário fazer o login no site para assistir este vídeo


Filtro


Criação da classe Filtro e dos métodos necessários para tornar possível a utilização do filtro dinâmico.

É necessário fazer o login no site para assistir este vídeo


Tratamento de Erros


Desenvolvimento de uma classe para armazenar os erros que podem retornar para o cliente. Devido tratamento dos erros.

É necessário fazer o login no site para assistir este vídeo


Acesso Externo IIS Express


Explicações sobre como permitir o acesso externo para o servidor IIS Express.

É necessário fazer o login no site para assistir este vídeo


Boas Práticas REST e Filtro


Alteração do servidor para enviar ID no put seguindo boas práticas e para usar parâmetro de consulta (query parameter) para o filtro no lugar de usar uma rota para isso.

Boas Práticas REST


Considerações sobre boas práticas REST.

É necessário fazer o login no site para assistir este vídeo


Evolução no Filtro


Alteração na lógica de recebimento do filtro através de um parâmetro de consulta (query parameter).

É necessário fazer o login no site para assistir este vídeo


Agências


No vídeo abaixo você verá a implementação do código referente à tabela banco_agencia.

Banco Agência


O que você vai ver:

  • Como utilizar a biblioteca PoweredSoft.DynamicLinq para criar filtros dinâmicos
  • Como foi implementado o model BancoAgencia - mapeamento usando a anotação [ForeignKey()]
  • Como foi implementado o controller BancoAgencia
  • Como foi implementado o repository BancoAgencia - incluindo o objeto Banco no retorno da consulta


É necessário fazer o login no site para assistir este vídeo


Pessoa


No vídeo abaixo você verá a implementação do código referente à tabela pessoa e suas agregadas.

Pessoa


O que você vai ver:

  • Organização no nome das pastas
  • Como foi implementado o model Pessoa e seus agregados - mapeamento usando as anotações [ForeignKey] e [InverseProperties]
  • Como foi alterado o controller Pessoa para funcionar com o código atualizado
  • Como foi alterado o repository Pessoa para funcionar com o código atualizado
  • Como utilizar a biblioteca NewtonsoftJson para evitar 'object cycle' (loop infinito) na serialização do JSON
  • Remoção dos repositórios PessoaJuridica e PessoaContato


É necessário fazer o login no site para assistir este vídeo


Evolução no Código


No vídeo abaixo você verá uma alteração no código para que seja possível persistir devidamente o objeto Pessoa e seus agregados que vem do cliente feito em Flutter.

É necessário fazer o login no site para assistir este vídeo