ASP .NET - Usando Os Novos Modelos de Projeto
ASP .NET - Usando Os Novos Modelos de Projeto
Nas versões anteriores do ASP .NET, os modelos de projetos forneciam somente uma estrutura simples com pouca orientação sobre como construir
uma aplicação web de produção. Dessa forma, dependendo do cenário da sua aplicação web, você tinha que implementar certos recursos, como a
autenticação de formulários, por exemplo desde o início.
Na nova versão, a ASP .NET 4 introduz novos modelos de projetos conforme podemos ver na figura a seguir:(Usando o Visual Web Developer)
Novos modelos da .NET Framework 4.0 - Modelos existente na versão anterior : .NET Framework 3.5 -
Visual Web Developer 2010 Express Edition Visual Web Developer 2008 Express Edition
O modelo Empty Web Application é um projeto Web Application é um projeto com um arquivo web.Config mínimo e despojado de qualquer
recurso ou configuração.
Funcionalidade básica do MemberShip - Os novos modelos têm uma implementação simples de um módulo de segurança que permite que você rapidamente
começar a garantindo o acesso à nova aplicação usando a segurança;
Master Page padrão - Os novos modelos incluem uma Master Page usada pela página Default.aspx;
arquivo CSS padrão - Todos os componentes de interface que compõem o projeto criado pelo novo modelo utilizam a definição de estilo CSS do arquivo de estilo
chamado Site.css;
Arquivo Web.Config mínimo - No Microsoft. NET Framework 4, toda a configuração necessária para cada módulo que não é específico do aplicativo, pode ser inferida
a partir do arquivo machine.config localizado dentro do diretório. NET Framework.Dessa forma temos um Web.config bem simples que inclui apenas os dados que são
específicos da aplicação, evitando a necessidade de duplicar definições e assim ter um arquivo de configuração mais simples para uso.
Integração JQuery - A biblioteca JQuery é um livraria Javascript open-source muito popular que esta incluída tanto nos projetos ASP .NET Web Forms como nos projetos
ASP .NET MVC. A library Microsoft Ajax foi projetada para atrair desenvolvedores JQuery e você pode mesclar plug-ins JQuery e controles de cliente Microsoft Ajax em sua
aplicação.
Vamos criar um novo projeto usando o modelo ASP .NET Web Application e analisar a sua estrutura.
Podemos fazer isso usando o Visual Studio 2010 ou o Visual Web Developer 2010 Express Edition. Eu vou usar o segundo de forma a que todos
possam acompanhar o artigo.
Abra o Visual Web Developer 2010 Express Edition e no menu File selecione New -> Project;
Na janela de diálogo New Project você pode escolher qual a linguagem vai usar em sua aplicação Web: Visual Basic ou Visual C#.
A seguir selecione o item Web pois vamos criar uma projeto ASP .NET;
Selecione o modelo (template) ASP .NET Web Application;
Informe o nome MeuWebSite (ou outro a seu critério);
Defina a localização do do projeto;(no exemplo c:\_aspn)
Clique no botão OK;
www.macoratti.net/11/05/aspn_nmp1.htm 1/5
03/04/2020 ASP .NET - Usando os novos modelos de Projeto
Observando a janela Solution Explorer iremos ver a seguinte estrutura criada para a nossa aplicação ASP .NET:
Funcionalidade básica do MemberShip - Toda a funcionalidade de segurança esta implementada no pasta Account do projeto;
Master Page padrão - A master page Site.Master fornecida pode ser encontra na raiz da aplicação Web;
arquivo CSS padrão - A pasta Styles contém o arquivo Site.css que define os estilos usados em todo o site;
Arquivo Web.Config mínimo - Se você abrir o arquivo Web.Config na raiz da aplicação Web irá perceber um arquivo com mínima configuração;
Integração JQuery - A pasta Scripts contém os arquivos da livraria JQuery. Podemos notar 3 arquivos que são versões diferentes da library JQuery:
jquery-1.4.1-vsdoc.js - Contém comentários in-line com suporte ao IntelliSense do Visual Studio; É usado em tempo de projeto pelo Visual Studio;
jquery-1.4.1.js - É a library JQuery que você usa em sua aplicação;
jquery-1.4.1.min.js - É uma versão reduzida da jquery-1.3.2.js;
<?xml version="1.0"?> Ao lado vemos o código definido no arquivo Web.Config da pasta Account.
<configuration>
Este arquivo Web.Config permite que usuários não autenticados acessar a página Register.aspx
<location path="Register.aspx">
O acesso a outras páginas esta limitado somente a usuários autenticados.
<system.web>
<authorization> Não é necessário permissão para acessar a página Login.aspx visto que ele é definida como
<allow users="*"/> página de login de autenticação de formulário tornando-a automaticamente acessível para
</authorization> qualquer usuário.
</system.web>
</location>
<system.web>
<authorization>
www.macoratti.net/11/05/aspn_nmp1.htm 2/5
03/04/2020 ASP .NET - Usando os novos modelos de Projeto
<deny users="?"/>
</authorization>
</system.web>
</configuration>
- A master page Site.Master, localizada na raiz da aplicação, o controle LoginView para mostrar o status do login e fornecer o link para
login/logout. Ao usar este controle na master page ele será renderizado em todas as páginas da aplicação que usarem a master page;
- O controle LoginView esta configurado para mostrar o nome do usuário logado, ou o link para a página de login, quando um usuário anônimo
acessa o site;
- As páginas Register.aspx e ChangePassword.aspx também são implementados usando os controles de login ASP.NET;
- A página Register.aspx usa o controle CreateUserWizard para orientar o usuário durante o processo de registro, enquanto a página
ChangePassword.aspx usa o controle ChangePassword;
- Todos os controles de login são configurados para usar autenticação de formulários com MemberShip SQL, Role e Profile provider. Essa
configuração pode ser encontrado no Web.config localizado no diretório raiz da aplicação web, conforme mostrado a seguir:
<configuration>
<connectionStrings>
<add name="ApplicationServices"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
<membership>
<providers>
<clear/>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationSer
enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWin
applicationName="/" />
</providers>
</membership>
<profile>
<providers>
<clear/>
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applic
</providers>
</profile>
<roleManager enabled="false">
<providers>
<clear/>
<add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicati
<add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
</providers>
</roleManager>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>
No Microsoft. NET Framework 4, os elementos de configuração importantes foram movidos para o arquivo machine.config, e as aplicações agora
herdam estas configurações. Isso permite que o arquivo web.config seja bem reduzido.
Desde que você tenha criado uma aplicação web que inclui o módulo de autenticação, você vai ter as seções de configurações no arquivo
Web.Config conforme mostrado acima. A tabela a seguir mostra os componentes e o correspondente elemento de configuração a que ele se
aplica.
www.macoratti.net/11/05/aspn_nmp1.htm 3/5
03/04/2020 ASP .NET - Usando os novos modelos de Projeto
Observe que temos uma seção de configuração <connectionString> que define a sequência de conexão que será usada por todos os SQL Providers
pré-configurados.
<connectionStrings>
<add name="ApplicationServices"
connectionString="data source=.\SQLEXPRESS;Integrated
Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient" />
</connectionStrings>
A página de login com o link para página Register.aspx onde o usuário pode se registrar:
www.macoratti.net/11/05/aspn_nmp1.htm 4/5
03/04/2020 ASP .NET - Usando os novos modelos de Projeto
E assim apresentamos o novo modelo de projeto Web Application que já incorpora diversos recursos importantes que você pode usar em seus
projetos.
"Falou-lhes pois Jesus outra vez, dizendo: Eu sou a luz do mundo; quem me segue não andará em trevas, mas terá a luz da vida." (João
8:12)
Referências:
ASP.NET - JavaScript - Macoratti.net
Debugando código em JavaScript no VS 2008 - Macoratti.net
Using JavaScript along with ASP.NET 2.0 - http://msdn2.microsoft.com/en-us/library/aa479390.aspx
ASP .NET - Apresentando JQuery - Macoratti.net
ASP.NET - Usando Roles e MemberShip - Macoratti.net
ASP .NET - Usando MemberShip, Roles e Profiles com o Microsoft Access
ASP.NET 2.0 - Acesssando Membership e Roles via código - Macoratti.net
ASP.NET - Usando Application Services - Macoratti.net
Implementando a segurança com formulários WEB - Macoratti.net
Super DVD .NET - A sua porta de entrada na plataforma .NET
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
www.macoratti.net/11/05/aspn_nmp1.htm 5/5