Buscar

Aula_14 11 18 (2)

Prévia do material em texto

Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
1 
Página inicial do projeto: 
http://localhost:59188/Home/Index 
 
 
 
Criando a base de dados: 
MDF - Master Database File 
 
 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
2 
Criando a tabela de Funcionarios: 
 
 
 
create table Funcionario( 
 IdFuncionario integer identity(1,1), 
 Nome nvarchar(50) not null, 
 Salario decimal(18,2) not null, 
 DataAdmissao date not null, 
 primary key(IdFuncionario)) 
 
Executando: 
 
 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
3 
\Web.config.xml 
Principal arquivo de configuração do projeto Asp.Net, neste exemplo iremos 
utiliza-lo para mapear a string de conexão com o banco de dados. 
 
 
<!-- Mapeamento da string de conexão --> 
 <connectionStrings> 
 <add 
 name="aula08" 
 connectionString="Data Source=(LocalDB)\MSSQLLocalDB; 
 AttachDbFilename=C:\Users\COTI\Desktop\_Aula_14.11.18\Aula08\ 
 Projeto.Presentation\App_Data\Banco.mdf;Integrated Security=True" 
 /> 
 </connectionStrings> 
 
----------------------- 
 
3 - Camada de Acesso a dados 
Repositorio de dados 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
4 
Criando a classe de entidade: Funcionario 
 
 
 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
 
namespace Projeto.Repository.Entities 
{ 
 public class Funcionario 
 { 
 //propriedades set / get [prop] + 2x[tab] 
 public int IdFuncionario { get; set; } 
 public string Nome { get; set; } 
 public decimal Salario { get; set; } 
 public DateTime DataAdmissao { get; set; } 
 
 //construtor default [ctor] + 2x[tab] 
 public Funcionario() 
 { 
 //vazio 
 } 
 
 //sobrecarga de construtores (overloading) 
 public Funcionario(int idFuncionario, string nome, 
 decimal salario, DateTime dataAdmissao) 
 { 
 IdFuncionario = idFuncionario; 
 Nome = nome; 
 Salario = salario; 
 DataAdmissao = dataAdmissao; 
 } 
 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
5 
 //sobrescrita do método ToString() 
 public override string ToString() 
 { 
 return $"Id: {IdFuncionario}, Nome: {Nome}, 
 Salário: {Salario}, Admissão: {DataAdmissao}"; 
 } 
 } 
} 
 
Criando uma classe para conexão com o banco de dados: 
 
 
 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Data.SqlClient; //Acesso ao sqlserver 
 
namespace Projeto.Repository.Repositories 
{ 
 public class Conexao 
 { 
 //propriedades.. 
 public SqlConnection Connection { get; set; } 
 public SqlCommand Command { get; set; } 
 public SqlDataReader DataReader { get; set; } 
 public SqlTransaction Transaction { get; set; } 
 
 public void AbrirConexao() 
 { 
 Connection = new SqlConnection(); 
 Connection.Open(); 
 } 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
6 
 public void FecharConexao() 
 { 
 Connection.Close(); 
 } 
 } 
} 
 
Obtendo a connectionstring mapeada no arquivo Web.config.xml 
** Adicionar no projeto uma referencia para System.Configuration 
 
 
 
 
using System; 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
7 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Data.SqlClient; //Acesso ao sqlserver 
using System.Configuration; //Acesso ao \Web.config.xml 
 
namespace Projeto.Repository.Repositories 
{ 
 public class Conexao 
 { 
 //propriedades.. 
 public SqlConnection Connection { get; set; } 
 public SqlCommand Command { get; set; } 
 public SqlDataReader DataReader { get; set; } 
 public SqlTransaction Transaction { get; set; } 
 
 public void AbrirConexao() 
 { 
 Connection = new SqlConnection(ConfigurationManager.ConnectionStrings 
 ["aula08"].ConnectionString); 
 Connection.Open(); 
 } 
 
 public void FecharConexao() 
 { 
 Connection.Close(); 
 } 
 
 } 
 
} 
 
Criando uma classe para implementar um CRUD (Inserir, 
Atualizar, Excluir e Consultar) com a entidade Funcionario. 
 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
8 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Data.SqlClient; //Acesso ao SqlServer 
using Projeto.Repository.Entities; //Classes de entidade 
 
namespace Projeto.Repository.Repositories 
{ 
 public class FuncionarioRepository : Conexao 
 { 
 //método para inserir um funcionário na base de dados.. 
 public void Inserir(Funcionario f) 
 { 
 string query = "insert into Funcionario(Nome, Salario, DataAdmissao) " 
 + "values(@Nome, @Salario, @DataAdmissao)"; 
 
 Command = new SqlCommand(query, Connection); 
 Command.Parameters.AddWithValue("@Nome", f.Nome); 
 Command.Parameters.AddWithValue("@Salario", f.Salario); 
 Command.Parameters.AddWithValue("@DataAdmissao", f.DataAdmissao); 
 Command.ExecuteNonQuery(); 
 } 
 
 //método para atualizar um funcionário na base de dados.. 
 public void Atualizar(Funcionario f) 
 { 
 string query = "update Funcionario set Nome = @Nome, 
 Salario = @Salario, " 
 + "DataAdmissao = @DataAdmissao 
 where IdFuncionario = @IdFuncionario"; 
 
 Command = new SqlCommand(query, Connection); 
 Command.Parameters.AddWithValue("@Nome", f.Nome); 
 Command.Parameters.AddWithValue("@Salario", f.Salario); 
 Command.Parameters.AddWithValue("@DataAdmissao", f.DataAdmissao); 
 Command.Parameters.AddWithValue("@IdFuncionario", f.IdFuncionario); 
 Command.ExecuteNonQuery(); 
 } 
 
 //método para excluir o funcionario na base de dados.. 
 public void Excluir(int idFuncionario) 
 { 
 string query = "delete from Funcionario 
 where IdFuncionario = @IdFuncionario"; 
 
 Command = new SqlCommand(query, Connection); 
 Command.Parameters.AddWithValue("@IdFuncionario", idFuncionario); 
 Command.ExecuteNonQuery(); 
 } 
 
 //método para listar todas as vendas na base de dados.. 
 public List<Funcionario> Consultar() 
 { 
 string query = "select * from Funcionario"; 
 
 Command = new SqlCommand(query, Connection); 
 DataReader = Command.ExecuteReader(); 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
9 
 List<Funcionario> lista = new List<Funcionario>(); 
 
 while (DataReader.Read()) 
 { 
 Funcionario funcionario = new Funcionario();funcionario.IdFuncionario = Convert.ToInt32 
 (DataReader["IdFuncionario"]); 
 
 funcionario.Nome = Convert.ToString 
 (DataReader["Nome"]); 
 
 funcionario.Salario = Convert.ToDecimal 
 (DataReader["Salario"]); 
 
 funcionario.DataAdmissao = Convert.ToDateTime 
 (DataReader["DataAdmissao"]); 
 
 lista.Add(funcionario); 
 } 
 
 return lista; 
 } 
 } 
} 
 
2 - Camada de Regras de Negócio 
Biblioteca de Classes .NET Framework 
 
 
 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using Projeto.Repository.Entities; 
using Projeto.Repository.Repositories; 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
10 
namespace Projeto.Business 
{ 
 public class FuncionarioBusiness 
 { 
 //método para realizar o cadastro de um funcionario.. 
 public string Cadastrar(Funcionario f) 
 { 
 FuncionarioRepository funcionarioRepository 
 = new FuncionarioRepository(); 
 
 try 
 { 
 funcionarioRepository.AbrirConexao(); 
 funcionarioRepository.Inserir(f); 
 
 return $"Funcionário {f.Nome}, cadastrado com sucesso."; 
 } 
 catch(Exception e) 
 { 
 //retornar mensagem de erro.. 
 return "Erro ao cadastrar funcionário: " + e.Message; 
 } 
 finally 
 { 
 funcionarioRepository.FecharConexao(); 
 } 
 } 
 } 
} 
 
Adicionando referencias no projeto MVC: 
 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
11 
 
 
Criando uma classe de controle em MVC para gerar 
as páginas de cadastro e consulta de funcionarios: 
 
 
 
 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
12 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.Mvc; 
 
namespace Projeto.Presentation.Controllers 
{ 
 public class FuncionarioController : Controller 
 { 
 // GET: Funcionario/Cadastro 
 public ActionResult Cadastro() 
 { 
 return View(); 
 } 
 } 
} 
 
 
 
 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
13 
@{ 
 Layout = null; 
} 
 
<!DOCTYPE html> 
 
<html> 
<head> 
 <meta name="viewport" content="width=device-width" /> 
 <title>Index</title> 
 
 <link href="~/Content/bootstrap.css" rel="stylesheet" /> 
 
</head> 
<body> 
 <div class="container"> 
 
 <h1>Bem vindo ao Sistema</h1> 
 <p> 
 Aula de C# WebDeveloper - Asp.Net MVC 
 </p> 
 
 <hr/> 
 
 <p> 
 Escolha a operação desejada: 
 </p> 
 
 <a href="/Funcionario/Cadastro" class="btn btn-success"> 
 Cadastrar Funcionários 
 </a> 
 
 <a href="" class="btn btn-primary"> 
 Consultar Funcionários 
 </a> 
 
 </div> 
</body> 
</html> 
 
---------------------------------------------- 
 
 
@{ 
 Layout = null; 
} 
 
<!DOCTYPE html> 
 
<html> 
<head> 
 <meta name="viewport" content="width=device-width" /> 
 <title>Cadastro</title> 
 
 <!-- folha de estilo CSS --> 
 <link href="~/Content/bootstrap.css" rel="stylesheet" /> 
 
</head> 
<body> 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
14 
 <div class="container"> 
 
 <h1>Cadastro de Funcionários</h1> 
 <a href="/Home/Index" class="btn btn-info btn-sm"> 
 Voltar para página inicial 
 </a> 
 
 <hr/> 
 
 <p> 
 Para cadastrar um funcionário, preencha os campos abaixo: 
 </p> 
 
 </div> 
 
</body> 
</html> 
 
-------------------------- 
 
Model (dados) 
 
São classes utilizadas em MVC para capturar dados de uma página (View), 
validar estes dados e entrega-los ao controller. Tambem são responsaveis 
por trazer dados dos controllers para exibição nas páginas. 
 
- Criando uma classe Model para representar 
os dados de cadastro do funcionario: 
 
 
 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.ComponentModel.DataAnnotations; //validação.. 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
15 
 
namespace Projeto.Presentation.Models 
{ 
 public class FuncionarioCadastroModel 
 { 
 [Required(ErrorMessage = "Por favor, informe o nome do funcionário.")] 
 public string Nome { get; set; } 
 
 [Required(ErrorMessage = "Por favor, informe o salário do funcionário.")] 
 public decimal Salario { get; set; } 
 
 [Required(ErrorMessage = "Por favor, informe a data 
 de admissão do funcionário.")] 
 public DateTime DataAdmissao { get; set; } 
 } 
} 
 
Criando o formulário de 
cadastro de Funcionario: 
 
 
@{ 
 Layout = null; 
} 
 
<!DOCTYPE html> 
 
<html> 
<head> 
 <meta name="viewport" content="width=device-width" /> 
 <title>Cadastro</title> 
 
 <!-- folha de estilo CSS --> 
 <link href="~/Content/bootstrap.css" rel="stylesheet" /> 
 
</head> 
<body> 
 
 <div class="container"> 
 
 <h1>Cadastro de Funcionários</h1> 
 <a href="/Home/Index" class="btn btn-info btn-sm"> 
 Voltar para página inicial 
 </a> 
 
 <hr/> 
 
 <p> 
 Para cadastrar um funcionário, preencha os campos abaixo: 
 </p> 
 
 <br/> 
 
 @model Projeto.Presentation.Models.FuncionarioCadastroModel 
 
 @using (Html.BeginForm()) 
 { 
 <label>Nome do Funcionário:</label> <br/> 
 @Html.TextBoxFor(model => model.Nome) 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
16 
 <br /><br /> 
 
 <label>Salário:</label> <br/> 
 @Html.TextBoxFor(model => model.Salario) 
 <br /><br /> 
 
 <label>Data de Admissão:</label> <br/> 
 @Html.TextBoxFor(model => model.DataAdmissao) 
 <br /><br /> 
 
 <input type="submit" value="Cadastrar Funcionário" 
 class="btn btn-success"/> 
 } 
 
 </div> 
 
</body> 
</html> 
 
-------------------------- 
 
Estilizando os campos do formulário: 
 
@{ 
 Layout = null; 
} 
 
<!DOCTYPE html> 
 
<html> 
<head> 
 <meta name="viewport" content="width=device-width" /> 
 <title>Cadastro</title> 
 
 <!-- folha de estilo CSS --> 
 <link href="~/Content/bootstrap.css" rel="stylesheet" /> 
 
</head> 
<body> 
 
 <div class="container"> 
 
 <h1>Cadastro de Funcionários</h1> 
 <a href="/Home/Index" class="btn btn-info btn-sm"> 
 Voltar para página inicial 
 </a> 
 
 <hr/> 
 
 <p> 
 Para cadastrar um funcionário, preencha os campos abaixo: 
 </p> 
 
 <br/> 
 
 @model Projeto.Presentation.Models.FuncionarioCadastroModel 
 
 @using (Html.BeginForm()) 
 { 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
17 
 <label>Nome do Funcionário:</label> <br/> 
 @Html.TextBoxFor(model => model.Nome, 
 new { @class = "form-controlcol-md-3" }) 
 <br /><br /> 
 
 <label>Salário:</label> <br/> 
 @Html.TextBoxFor(model => model.Salario, 
 new { @class = "form-control col-md-3" }) 
 <br /><br /> 
 
 <label>Data de Admissão:</label> <br/> 
 @Html.TextBoxFor(model => model.DataAdmissao, 
 new { @class = "form-control col-md-3", @type = "date" }) 
 <br /><br /> 
 
 <input type="submit" value="Cadastrar Funcionário" 
 class="btn btn-success"/> 
 } 
 
 </div> 
 
</body> 
</html> 
 
 
Exibindo as mensagens de erro de validação: 
 
 
@{ 
 Layout = null; 
} 
 
<!DOCTYPE html> 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
18 
<html> 
<head> 
 <meta name="viewport" content="width=device-width" /> 
 <title>Cadastro</title> 
 
 <!-- folha de estilo CSS --> 
 <link href="~/Content/bootstrap.css" rel="stylesheet" /> 
 
</head> 
<body> 
 
 <div class="container"> 
 
 <h1>Cadastro de Funcionários</h1> 
 <a href="/Home/Index" class="btn btn-info btn-sm"> 
 Voltar para página inicial 
 </a> 
 
 <hr/> 
 
 <p> 
 Para cadastrar um funcionário, preencha os campos abaixo: 
 </p> 
 
 <br/> 
 
 @model Projeto.Presentation.Models.FuncionarioCadastroModel 
 
 @using (Html.BeginForm()) 
 { 
 <div class="text-danger"> 
 @Html.ValidationSummary() 
 </div> 
 
 <label>Nome do Funcionário:</label> <br/> 
 @Html.TextBoxFor(model => model.Nome, 
 new { @class = "form-control col-md-3", 
 @placeholder = "Informe o nome" }) 
 <br /> 
 
 <label>Salário:</label> <br/> 
 @Html.TextBoxFor(model => model.Salario, 
 new { @class = "form-control col-md-3", 
 @placeholder = "Informe o salário" 
 }) 
 <br /> 
 
 <label>Data de Admissão:</label> <br/> 
 @Html.TextBoxFor(model => model.DataAdmissao, 
 new { @class = "form-control col-md-3", 
 @type = "date" }) 
 <br /> 
 
 <input type="submit" value="Cadastrar Funcionário" 
 class="btn btn-success"/> 
 } 
 
 </div> 
</body> 
</html> 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
19 
Enviando os dados do formulário para a classe de controle: 
 
 
@{ 
 Layout = null; 
} 
 
<!DOCTYPE html> 
 
<html> 
<head> 
 <meta name="viewport" content="width=device-width" /> 
 <title>Cadastro</title> 
 
 <!-- folha de estilo CSS --> 
 <link href="~/Content/bootstrap.css" rel="stylesheet" /> 
 
</head> 
<body> 
 
 <div class="container"> 
 
 <h1>Cadastro de Funcionários</h1> 
 <a href="/Home/Index" class="btn btn-info btn-sm"> 
 Voltar para página inicial 
 </a> 
 
 <hr/> 
 
 <p> 
 Para cadastrar um funcionário, preencha os campos abaixo: 
 </p> 
 
 <br/> 
 
 @model Projeto.Presentation.Models.FuncionarioCadastroModel 
 
 @using (Html.BeginForm("CadastrarFuncionario", 
 "Funcionario", FormMethod.Post)) 
 { 
 <div class="text-danger"> 
 @Html.ValidationSummary() 
 </div> 
 
 <label>Nome do Funcionário:</label> <br/> 
 @Html.TextBoxFor(model => model.Nome, 
 new { @class = "form-control col-md-3", 
 @placeholder = "Informe o nome" }) 
 <br /> 
 
 <label>Salário:</label> <br/> 
 @Html.TextBoxFor(model => model.Salario, 
 new { @class = "form-control col-md-3", 
 @placeholder = "Informe o salário" 
 }) 
 <br /> 
 
 <label>Data de Admissão:</label> <br/> 
 @Html.TextBoxFor(model => model.DataAdmissao, 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
20 
 new { @class = "form-control col-md-3", 
 @type = "date" }) 
 <br /> 
 <input type="submit" value="Cadastrar Funcionário" 
 class="btn btn-success"/> 
 } 
 </div> 
</body> 
</html> 
 
Criando o método na classe de controle: 
FuncionarioController.cs 
 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.Mvc; 
using Projeto.Repository.Entities; //importando.. 
using Projeto.Business; //importando.. 
using Projeto.Presentation.Models; //importando.. 
 
namespace Projeto.Presentation.Controllers 
{ 
 public class FuncionarioController : Controller 
 { 
 // GET: Funcionario/Cadastro 
 public ActionResult Cadastro() 
 { 
 return View(); 
 } 
 
 [HttpPost] //recebe uma requisição POST da página 
 public ActionResult CadastrarFuncionario(FuncionarioCadastroModel model) 
 { 
 //nome da página 
 return View("Cadastro"); 
 } 
 } 
} 
 
 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
21 
Realizando o cadastro: 
 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.Mvc; 
using Projeto.Repository.Entities; //importando.. 
using Projeto.Business; //importando.. 
using Projeto.Presentation.Models; //importando.. 
 
namespace Projeto.Presentation.Controllers 
{ 
 public class FuncionarioController : Controller 
 { 
 // GET: Funcionario/Cadastro 
 public ActionResult Cadastro() 
 { 
 return View(); 
 } 
 
 [HttpPost] //recebe uma requisição POST da página 
 public ActionResult CadastrarFuncionario(FuncionarioCadastroModel model) 
 { 
 //verificar se os dados recebidos atraves da classe model 
 //passaram nas regras de validação.. 
 if(ModelState.IsValid) 
 { 
 Funcionario funcionario = new Funcionario(); 
 funcionario.Nome = model.Nome; 
 funcionario.Salario = model.Salario; 
 funcionario.DataAdmissao = model.DataAdmissao; 
 
 FuncionarioBusiness business = new FuncionarioBusiness(); 
 string mensagem = business.Cadastrar(funcionario); 
 
 //enviando a mensagem para a página.. 
 ViewBag.Resultado = mensagem; 
 } 
 
 //nome da página 
 return View("Cadastro"); 
 } 
 } 
} 
 
Na página: 
 
 
@{ 
 Layout = null; 
} 
 
<!DOCTYPE html> 
 
<html> 
<head> 
 <meta name="viewport" content="width=device-width" /> 
 <title>Cadastro</title> 
 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
22 
 <!-- folha de estilo CSS --> 
 <link href="~/Content/bootstrap.css" rel="stylesheet" /> 
 
</head> 
<body> 
 
 <div class="container"> 
 
 <h1>Cadastro de Funcionários</h1> 
 <a href="/Home/Index" class="btn btn-info btn-sm"> 
 Voltar para página inicial 
 </a> 
 
 <hr/> 
 
 <p> 
 Para cadastrar um funcionário, preencha os campos abaixo: 
 </p> 
 
 <br/> 
 
 @model Projeto.Presentation.Models.FuncionarioCadastroModel 
 
 @using (Html.BeginForm("CadastrarFuncionario", 
 "Funcionario", FormMethod.Post)) 
 { 
 <div class="text-danger"> 
 @Html.ValidationSummary()</div> 
 
 <label>Nome do Funcionário:</label> <br/> 
 @Html.TextBoxFor(model => model.Nome, 
 new { @class = "form-control col-md-3", 
 @placeholder = "Informe o nome" }) 
 <br /> 
 
 <label>Salário:</label> <br/> 
 @Html.TextBoxFor(model => model.Salario, 
 new { @class = "form-control col-md-3", 
 @placeholder = "Informe o salário" 
 }) 
 <br /> 
 
 <label>Data de Admissão:</label> <br/> 
 @Html.TextBoxFor(model => model.DataAdmissao, 
 new { @class = "form-control col-md-3", 
 @type = "date" }) 
 <br /> 
 
 <input type="submit" value="Cadastrar Funcionário" 
 class="btn btn-success"/> 
 <br/> 
 
 <h3>@ViewBag.Resultado</h3> 
 } 
 
 </div> 
 
</body> 
</html> 
 
 
 
Treinamento em C# WebDeveloper 
 
Aula 
08 
Quarta-feira, 14 de Novembro de 2018 
 
 
Desenvolvimento Orientado a Objetos em C# 
 
 
23 
Executando: 
 
 
----------------------------------------------------

Continue navegando