Conteúdo:
É sempre uma dúvida a questão de onde usar o @model e onde usar o @Model em uma view. O tipo do modelo de visualização é especificado usando a expressão @model, com m minúsculo. O valor do modelo de visualização é incluído na saída HTML usando a expressão @Model, com M maiúsculo.
Veja no exemplo a seguir na controller:
using Microsoft.AspNetCore.Mvc;
namespace FirstProject.Controllers {
public class HomeController : Controller {
public ViewResult Index() {
int hour = DateTime.Now.Hour;
string viewModel =
hour < 12 ? "Good Morning" : "Good Afternoon";
return View("MyView", viewModel);
}
}
}
A string viewModel
será passada como model para view MyView.
A view:
@model string
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
@Model World (from the view)
</div>
</body>
</html>
ASP.NET Core Middleware é um pedaço de código integrado dentro do pipeline do aplicativo que podemos usar para lidar com requests e responses. Quando falamos sobre o middleware ASP.NET Core, podemos pensar nele como uma seção de código que é executada com cada request.
Geralmente, temos mais de um componente de middleware em nosso aplicativo. Cada componente pode:
Para construir uma pipeline estamos usando request delegates, que manipulam cada requisição HTTP. Para configurar um request delegate usamos os métodos de extensão Run, Map e Use.
Run adiciona um componente terminal a pipeline.
Dentro da pipeline de request, uma aplicação executa cada componente na ordem em que aparece no código, de baixo para cima:
A ordem de execução também é importante e segue a sequência abaixo: