CRUD ASP.net CORE – 02 Arquitetura MVC

Arquitetura Cliente-Servidor ( Aplicação Web) 

Estrutura básica de um projeto ASP.net Core 

O ViewBag é um objeto com propriedades do tipo dynamic, portanto é possível criar qualquer nome para ela no momento da atribuição de valor. E na View utilizamos o @ViewBag.nomepropriedade para acessar o valor. O ViewData tem um comportamento similar ao ViewBag mas no formato de chave/valor. Mas o método mais correto para passar dados do Controlador para a View é criar o objeto Model, e dentro da Action do controlador instanciar o objeto ou recuperar do banco de dados, e então retornar para a view através do return View(variavel); 

A classe Controller do ASP.net MVC Core possui diversos métodos para facilitar o controle do fluxo da aplicação entre as Actions e os Controllers. 

//return View(); retorna ViewResult 

//return PartialView(); retorna ParatialViewResult 

//return Content(“Eu nao acredito”); retorna ContentResult 

//return Redirect(“/”); retorna RedirectResult 

//return RedirectToAction(“contact”); retorna RedirectToRouteResult 

//return RedirectToAction(“contact”,”home”); 

//return RedirectToAction(“contact”, “home”, new {page=1, sortBy=”name”}); 

//return Json(col, JsonRequestBehavior.AllowGet); retorna JsonResult 

//byte[] fileBytes = System.IO.File.ReadAllBytes(@”C:\favicon.ico“); 

//return File(fileBytes, System.Net.Mime.MediaTypeNames.Image.Jpeg); retorna FileResult 

//return HttpNotFound(“deu ruim”); retorna HttpNotFoundResult 

//return new EmptyResult(); retorna EmptyResult – não gera nenhum tipo de erro 

Na View utilizamos o @model NomeDaClasseModel para anotar que esta view irá utilizar este objeto como seu modelo, e para acessar os valores que o modelo carrega utilizamos o @Model.NomeDaPropriedade