Zonas em ASP.NET MVC
As áreas são alguns dos componentes mais importantes de ASP.NET MVC projetos. O principal uso de Áreas é particionar fisicamente o projeto da Web em unidades separadas.
As áreas são alguns dos componentes mais importantes de ASP.NET MVC projetos. O principal uso de Áreas é particionar fisicamente o projeto da Web em unidades separadas.
O que é uma área em ASP.NET MVC?
Se você examinar um projeto ASP.NET MVC, componentes lógicos como Model, Controller e View são mantidos fisicamente em pastas diferentes e ASP.NET MVC usa convenções de nomenclatura para criar a relação entre esses componentes. Os problemas começam quando você tem um aplicativo relativamente grande para implementar. Por exemplo, se você estiver implementando um aplicativo de comércio eletrônico com várias unidades de negócios, como Checkout, Faturamento e Pesquisa, etc. Cada uma dessas unidades tem suas próprias visualizações, controladores e modelos de componentes lógicos. Nesse cenário, é possível usar ASP.NET MVC Áreas para particionar fisicamente os componentes de negócios no mesmo projeto.
Resumindo, uma área pode ser definida como: Unidades funcionais menores em um projeto ASP.NET MVC com seu próprio conjunto de controladores, visualizações e modelos.

Um único aplicativo MVC pode ter qualquer número de Áreas. Algumas das características das Áreas são:
- Um aplicativo MVC pode ter qualquer número de áreas.
- Cada área tem seus próprios controladores, modelos e visualizações.
- Fisicamente, as áreas são colocadas em pastas separadas.
- As áreas são úteis no gerenciamento de grandes aplicativos da web.
- Um projeto de aplicação Web também pode usar Áreas de diferentes projetos.
- Usando Areas, vários desenvolvedores podem trabalhar no mesmo projeto de aplicativo Web.
Criando áreas
Criar áreas em um projeto MVC é muito simples. Basta clicar com o botão direito do mouse na área > > do projeto, conforme mostrado na imagem abaixo:

Aqui você será solicitado a fornecer o nome da área. Neste exemplo, vamos nomear a área como "Blogs" e clicar em Adicionar.

Vamos parar por um momento aqui e explorar o projeto. Encontraremos uma pasta Áreas foi adicionado, e dentro da pasta Áreas, encontraremos uma subpasta com o nome Blogs, que é a área que acabamos de criar. Dentro da subpasta Blogs, encontraremos pastas para os componentes MVC Controls, Views e Models.

Na pasta Blogs da Área, encontraremos uma BlogAreaRegistration.cs de classe. Nesta classe, foram registradas rotas para a Área do Blog.

Agora podemos adicionar controladores, modelos e exibições na área da mesma forma que os adicionamos normalmente em um projeto MVC. Por exemplo, para adicionar um controlador, vamos clicar com o botão direito do mouse na pasta do controlador na pasta Blogs e clicar em Add->Controller. Então, digamos que adicionamos um HomeController no controlador Blogs. Você encontrará o controlador adicionado no projeto, conforme mostrado na imagem abaixo:

Você descobrirá que o HomeController tem um método chamado Index. Para criar uma exibição, clique com o botão direito do mouse na ação Índice e selecione Adicionar exibição, conforme mostrado na imagem abaixo:

Na próxima tela, precisamos selecionar o modelo de exibição, a classe do modelo e outros. Para simplificar as coisas, vamos deixar tudo padrão e clicar no botão Adicionar para criar uma ação Exibir para o Índice no controlador Home da Área de Blogs.

Veremos que uma view foi criada dentro da subpasta Views da pasta Blogs, conforme mostrado na imagem abaixo:

Para verificar, vamos alterar o título da visualização, conforme mostrado na imagem abaixo:

Até agora, criamos:
- Uma área com o nome Blogs
- Um controlador dentro disso, chamado Home
- Uma exibição para a ação Índice para o controlador Home
- Alterar o título da visualização
Como último passo para trabalhar com Áreas, precisamos verificar se as Áreas estão cadastradas no App_Start do projeto ou não. Para fazer isso, abra global.asax e adicione a linha de código destacada abaixo (se ainda não estiver lá):

Agora que criamos as áreas, vamos executar o aplicativo e observar a URL.

Conforme destacado, para invocar o controlador da área, precisamos usar:
baseurl/areaname/controllername/{actionname}
Nesse caso, o controlador inicial da área Blog é chamado por:
Baseurl/Blogs/Home/Index
Resumo
Como você viu aqui, as áreas são alguns dos componentes mais importantes do ASP.NET MVC, permitindo-nos dividir grandes projetos em unidades menores e mais gerenciáveis, conforme demonstrado no exemplo deste blog. Espero que você ache o post útil e obrigado por ler!
Você já experimentou Infragistics conjunto de ferramentas jQuery/HTML5, uma solução de desenvolvimento web nativa líder do setor que permite criar web design altamente responsivo em qualquer dispositivo? Baixe uma avaliação gratuita hoje.
