TransWikia.com

Como criar um "Area" no MVC no .net core 3.1?

Stack Overflow em Português Asked by Ester Ribeiro on November 23, 2020

O caminho para criar uma Area não aparece mais no .net core 3.1

Caminho: Projeto > botão direito > Add > Area

2 Answers

Projeto > Add > New Scaffolded Item > MVC Area

Answered by E.Fagundes on November 23, 2020

Segundo a documentação do framework, para criar uma área é preciso:

  • A estrutura de diretórios com as áreas (necessário somente para views)
  • Controllers decorados com [Area("nome da área")]
  • Criação da rota no startup

Exemplo de estrutura

Project name
  Areas
    Products
      Controllers
        ManageController.cs
      Views
        Home
          Index.cshtml
        Manage
          Index.cshtml

Exemplo de controller

[Area("Products")]
public class ManageController : Controller
{

Configuração no startup

app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(
        name: "Products",
        pattern: "{area:exists}/{controller=Home}/{action=Index}/{id?}");

    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}");
});

Answered by tvdias on November 23, 2020

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP