notas de versão do ASP.NET and Web Tools 2013.2 para Visual Studio 2013

pela Microsoft

Notas de instalação

ASP.NET and Web Tools para Visual Studio 2013.2 são agrupadas no instalador do main e podem ser baixadas como parte do Visual Studio 2013 Atualização 2.

Documentação

Tutoriais e outras informações sobre ASP.NET and Web Tools para Visual Studio 2013.2 estão disponíveis no site do ASP.NET.

Requisitos de software

ASP.NET and Web Tools para Visual Studio 2013.2 requer Visual Studio 2013.

Novos recursos no ASP.NET and Web Tools para Visual Studio 2013.2

As seções a seguir descrevem os recursos que foram introduzidos na versão.

Modelos de projeto de um ASP.NET

  • Atualizações ASP.NET modelos do Project para dar suporte à confirmação da conta e à Redefinição de Senha.
  • Atualize ASP.NET Web API modelo para dar suporte à autenticação usando contas organizacionais locais.
  • O modelo spa ASP.NET agora contém autenticação baseada em exibições MVC e do lado do servidor. O modelo tem um controlador WebAPI que só pode ser acessado por usuários autenticados.

Suporte a SSL ao iniciar aplicativos Web no IIS Express

Para eliminar o aviso de segurança ao navegar e depurar HTTPS no localhost, adicionamos uma caixa de diálogo para permitir que o Explorer da Internet e o Chrome confiem no certificado SSL expresso do IIS autoassinado.

Por exemplo, uma propriedade de projeto Web pode ser definida para usar SSL. Clique em F4 para abrir a caixa de diálogo de propriedades. Altere SSL Habilitado para true. Copie a URL do SSL.

Propriedade Habilitada para SSL

Defina a guia da Web da página de propriedades do projeto Web para usar a URL baseada em HTTPS (a URL SSL será https://localhost:44300/ , a menos que você tenha criado sites SSL anteriormente.)

Definir URL do Projeto (HTTPS)

Pressione CTRL+F5 para executar o aplicativo. Siga as instruções para confiar no certificado autoassinado que IIS Express gerou.

Aviso SSL

Leia a caixa de diálogo Aviso de Segurança e clique em Sim se quiser instalar o certificado que representa o localhost.

Aviso de segurança

O site será mostrado no IE ou chrome sem o aviso de certificado no navegador.

Página HTTPS sem avisos

O Firefox usa seu próprio repositório de certificados, portanto, ele exibirá um aviso.

Aprimoramentos do Editor da Web do Visual Studio

  • Novo editor e item de projeto JSON: adicionamos um item de projeto JSON e um editor ao Visual Studio. Os recursos atuais do editor JSON incluem colorização, validação de sintaxe, preenchimento de chaves, estrutura de tópicos, configuração de opção de ferramentas e muito mais.

    JSON Editor

    O IntelliSense agora dá suporte ao esquema JSON v3 e v4. Há uma caixa de combinação de esquema para escolher esquemas existentes, editar o caminho do esquema local ou simplesmente arrastar soltar um arquivo JSON do projeto para obter o caminho relativo.

    Editor de esquema JSON do IntelliSense JSON

  • Novo editor sass (SCSS): adicionamos LESS no VS2013 RTM e agora temos um item de projeto Sass e um editor. Os recursos do editor Sass são comparáveis ao editor LESS e incluem colorização, variável e Mixins IntelliSense, comentário/comentário, informações rápidas, formatação, validação de sintaxe, estrutura de tópicos, definição de goto, seletor de cores, configuração de opção de ferramentas etc.

    Adicionar novo item: editor de folha de estilos da folha de estilos SCSS

  • Novo seletor de URL em documentos HTML, Razor, CSS, LESS e Sass: VS 2013 enviado sem seletor de URL fora de Web Forms páginas. O novo seletor de URL para editores HTML, Razor, CSS, LESS e Sass é um seletor de digitação fluente e sem caixa de diálogo que entende '.'. e filtra listas de arquivos adequadamente para marcas e links img.

    Captura de tela da nova digitação fluente sem caixa de diálogo que você é l Seletor que filtra listas de arquivos adequadamente. O exemplo ilustra links de imagem.Captura de tela da nova digitação fluente sem caixa de diálogo que você é l Seletor que filtra listas de arquivos adequadamente. O exemplo ilustra os links h t m l.Captura de tela do novo Seletor para editores c s s que filtra listas de arquivos adequadamente para marcas e links i m g.

  • Atualizações ao editor LESS adicionando mais recursos

  • Atualização do Knockout Intellisense: adicionamos uma sintaxe KnockOut não padrão para o VS intelliSense, sintaxe "ko-vs-editor viewModel:". Ele pode ser usado para associar a vários modelos de exibição em uma página usando comentários no formulário:

    Knockout Intellisense

    Também adicionamos suporte para o ViewModel IntelliSense aninhado, para que você possa analisar objetos profundamente aninhados no ViewModel.

    <div data-bind="text: foo.bar.baz.etc" />

    O IntelliSense exibido é o IntelliSense completo do Objeto JavaScript.

    IntelliSense mostrando o objeto JavaScript completo

  • Novo Seletor de URL em documentos HTML, Razor, CSS, LESS e Sass: VS 2013 enviado sem seletor de URL fora de Web Forms páginas. O novo seletor de URL para editores HTML, Razor, CSS, LESS e Sass é um seletor de digitação fluente e sem caixa de diálogo que entende '.'. e filtra listas de arquivos adequadamente para marcas e links img.

    Captura de tela da nova digitação fluente sem caixa de diálogo que você é l Seletor que filtra listas de arquivos adequadamente para marcas e links i m g.Captura de tela da nova digitação fluente sem caixa de diálogo que você é l Seletor que filtra listas de arquivos adequadamente, exibindo links h t m l.Captura de tela do novo seletor de digitação fluente sem caixa de diálogo para editores c s s que filtra listas de arquivos adequadamente para marcas e links i m g.

  • O Link do Navegador agora dá suporte a conexões HTTPS e listará isso no Painel com outras conexões, desde que o certificado seja confiável pelo navegador.
  • Mapeamento de origem HTML estático
  • Suporte a SPA para dados de mapeamento
  • Dados de mapeamento de atualização automática

Suporte para Serviço de Aplicativo do Azure Aplicativos Web no Visual Studio

Criar recursos remotos do Azure ao criar um novo projeto Web

Adicionamos uma caixa de seleção "Criar Recursos Remotos" do Azure na caixa de diálogo novo aplicativo Web. Ao escolher, você poderá integrar a experiência de criação de um novo aplicativo Web, configurar o site de publicação do Azure para teste e criar o perfil de publicação em algumas etapas simples.

Novo projeto com recursos do AzurePublicando no Azure

Aprimoramentos de publicação na Web

  • Melhorar a experiência do usuário para publicação.

ASP.NET Scaffolding

  • Suporte a enumeração: Se o modelo estiver usando Enums, o Scaffolder MVC gerará a lista suspensa para Enum. Isso usa os auxiliares Enum no MVC.
  • Suporte a inicialização: atualizou os modelos EditorFor no Scaffolding do MVC para que eles usem as classes Bootstrap.
  • Suporte a pacotes: os Scaffolders de API Web e MVC adicionarão pacotes 5.1 para MVC e API Web

As capturas de tela a seguir demonstram modelos de scaffolding.

  • Código do modelo:

    Código do modelo

  • Compile o código do modelo, clique com o botão direito do mouse e selecione Adicionar, Novo Item Com Scaffolded.

    Adicionar novo item scaffolded

  • Escolha Controlador MVC5 com exibições, usando o Entity Framework:

    Adicionar novo controlador MVC5 com exibições

  • Adicione o Controlador usando o modelo:

    Captura de tela da caixa de diálogo Adicionar Controlador, com a classe Modelo selecionada e o campo Classe de contexto Dados selecionado e realçado.

  • Verifique o código gerado, por exemplo, Views/WeekdayModels/Edit.cshtml contém : Exibição que contém @Html.EnumDropDownListForEnumDropDownListFor

  • Execute a página para ver a caixa de combinação de enumeração gerada, observe que, se um valor puder ser nulo, uma cadeia de caracteres vazia poderá ser escolhida para a caixa de combinação. Por exemplo, a página Criar mostra o seguinte:

    Caixa de combinação que permite uma cadeia de caracteres vazia

NuGet 2.8.1

O NuGet 2.8.1 RTM será lançado em abril de 2014. Aqui estão os pontos importantes das notas sobre a versão, mas marcar as notas de versão completas para obter mais informações sobre essas alterações.

  • Aplicativos de destino Windows Phone 8.1: o NuGet 2.8.1 agora dá suporte ao direcionamento de aplicativos Windows Phone 8.1 usando os monikers de estrutura de destino 'WindowsPhoneApp', 'WPA', 'WindowsPhoneApp81' e 'WPA81'.

  • Resolução de patch para dependências: ao resolver dependências de pacote, o NuGet implementou historicamente uma estratégia de seleção da versão mais baixa do pacote principal e secundária que atende às dependências do pacote. Ao contrário da versão principal e secundária, no entanto, a versão do patch sempre foi resolvida para a versão mais alta. Embora o comportamento tenha sido bem-intencionado, ele criou uma falta de determinismo para instalar pacotes com dependências.

  • Opção DependencyVersion: embora o NuGet 2.8 altere o comportamento padrão para resolver dependências, ele também adiciona um controle mais preciso sobre o processo de resolução de dependência por meio da opção -DependencyVersion no console do gerenciador de pacotes. A opção permite resolver dependências para a versão mais baixa possível (comportamento padrão), a versão mais alta possível ou a versão secundária ou de patch mais alta. Essa opção só funciona para install-package no comando do PowerShell.

  • Atributo DependencyVersion: além da opção -DependencyVersion detalhada acima, o NuGet também permitiu a capacidade de definir um novo atributo no arquivo nuget.config definindo qual é o valor padrão, se a opção -DependencyVersion não for especificada em uma invocação de install-package. Esse valor também será respeitado pela caixa de diálogo Gerenciador de Pacotes NuGet para quaisquer operações de pacote de instalação. Para definir esse valor, adicione o atributo abaixo ao arquivo nuget.config:

    <config> <add key="dependencyversion" value="Highest" /> </config>

  • Visualizar operações do NuGet com -WhatIf: alguns pacotes NuGet podem ter grafos de dependência profundos e, como tal, pode ser útil durante uma operação de instalação, desinstalação ou atualização para ver primeiro o que acontecerá. O NuGet 2.8 adiciona os comandos padrão do PowerShell - e se alternar para os comandos install-package, uninstall-package e update-package para habilitar a visualização de todo o fechamento de pacotes aos quais o comando será aplicado.

  • Pacote de downgrade: não é incomum instalar uma versão de pré-lançamento de um pacote para investigar novos recursos e, em seguida, decidir reverter para a última versão estável. Antes do NuGet 2.8, esse era um processo de várias etapas para desinstalar o pacote de pré-lançamento e suas dependências e, em seguida, instalar a versão anterior. Com o NuGet 2.8, no entanto, o pacote de atualização agora reverterá todo o fechamento do pacote (por exemplo, a árvore de dependência do pacote) para a versão anterior.

  • Dependências de desenvolvimento: muitos tipos diferentes de recursos podem ser entregues como pacotes NuGet, incluindo ferramentas usadas para otimizar o processo de desenvolvimento. Esses componentes, embora possam ser fundamentais no desenvolvimento de um novo pacote, não devem ser considerados uma dependência do novo pacote quando ele for publicado posteriormente. O NuGet 2.8 permite que um pacote se identifique no arquivo .nuspec como um developmentDependency. Quando instalados, esses metadados também serão adicionados ao arquivo packages.config do projeto no qual o pacote foi instalado. Quando esse arquivo packages.config for analisado posteriormente para dependências do NuGet durante nuget.exe pacote, ele excluirá essas dependências marcadas como dependências de desenvolvimento.

  • Arquivos de packages.config individuais para diferentes plataformas: ao desenvolver aplicativos para várias plataformas de destino, é comum ter arquivos de projeto diferentes para cada um dos respectivos ambientes de build. Também é comum consumir diferentes pacotes NuGet em arquivos de projeto diferentes, pois os pacotes têm níveis variados de suporte para diferentes plataformas. O NuGet 2.8 fornece suporte aprimorado para esse cenário criando diferentes arquivos de packages.config para diferentes arquivos de projeto específicos da plataforma.

  • Fallback para o Cache Local: embora os pacotes NuGet normalmente sejam consumidos de uma galeria remota, como a galeria do NuGet usando uma conexão de rede, há muitos cenários em que o cliente não está conectado. Sem uma conexão de rede, o cliente NuGet não conseguiu instalar pacotes com êxito, mesmo quando esses pacotes já estavam no computador do cliente no cache NuGet local. O NuGet 2.8 adiciona fallback de cache automático ao console do gerenciador de pacotes.

    O recurso de fallback de cache não requer argumentos de comando específicos. Além disso, o fallback de cache atualmente funciona apenas no console do gerenciador de pacotes – o comportamento não funciona atualmente na caixa de diálogo do gerenciador de pacotes.

  • Correções de bug: uma das principais correções de bugs feitas foi a melhoria de desempenho no comando update-package -reinstall.

    Além desses recursos e da correção de desempenho mencionada anteriormente, esta versão do NuGet também inclui muitas outras correções de bugs. Houve 181 problemas totais resolvidos na versão. Para obter uma lista completa dos itens de trabalho corrigidos no NuGet 2.8, veja o Rastreador de Problemas do NuGet para esta versão.

Web Forms do ASP.NET

ASP.NET MVC 5.1.2

ASP.NET Web API 2.1.2

Páginas da Web do ASP.NET 3.1.2

Entity Framework 6.1

O Entity Framework foi atualizado para a versão 6.1 para runtime e ferramentas. O Entity Framework (EF) 6.1 é uma atualização secundária do Entity Framework 6 e inclui várias correções de bugs e novos recursos. Para obter informações detalhadas sobre o EF6.1, incluindo links para a documentação dos novos recursos, consulte Histórico de versão do Entity Framework. Os novos recursos desta versão incluem:

  • A consolidação de ferramentas fornece uma maneira consistente de criar um novo modelo de EF. Esse recurso estende o assistente ADO.NET Modelo de Dados de Entidade para dar suporte à criação de modelos do Code First, incluindo engenharia reversa de um banco de dados existente. Esses recursos estavam disponíveis anteriormente na qualidade Beta no EF Power Tools.
  • O tratamento de falhas de confirmação de transação fornece o novo System.Data.Entity.Infrastructure.CommitFailureHandler , que usa a capacidade recém-introduzida de interceptar operações de transação. O CommitFailureHandler permite a recuperação automática de falhas de conexão ao confirmar uma transação.
  • IndexAttribute permite que os índices sejam especificados colocando um atributo em uma propriedade (ou propriedades) em seu modelo Code First. Em seguida, o Code First criará um índice correspondente no banco de dados.
  • A API de mapeamento público fornece acesso às informações que o EF tem sobre como as propriedades e os tipos são mapeados para colunas e tabelas no banco de dados. Em versões anteriores, essa API era interna.
  • Capacidade de configurar interceptadores por meio do arquivo app/Web.config (permitindo que interceptadores sejam adicionados sem recompilar o aplicativo).
  • DatabaseLogger é um novo interceptador que facilita o log de todas as operações de banco de dados em um arquivo. Em combinação com o recurso anterior, isso permite que você alterne facilmente o registro em log de operações de banco de dados para um aplicativo implantado, sem a necessidade de recompilar.
  • A detecção de alterações do modelo de migrações foi aprimorada para que as migrações com scaffolded sejam mais precisas; o desempenho do processo de detecção de alterações também foi muito aprimorado.
  • Melhorias de desempenho , incluindo operações de banco de dados reduzidas durante a inicialização, otimizações para comparação de igualdade nula em consultas LINQ, geração de exibição mais rápida (criação de modelo) em mais cenários e materialização mais eficiente de entidades rastreadas com várias associações.

ASP.NET Identity 2.0.0

  • Autenticação de dois fatores: ASP.NET Identity agora dá suporte à autenticação de dois fatores. A autenticação de dois fatores fornece uma camada extra de segurança para suas contas de usuário no caso em que sua senha é comprometida. Também há proteção para ataques de força bruta contra os dois códigos de fator.

  • Bloqueio de conta: Fornece uma maneira de bloquear o usuário se o usuário inserir sua senha ou códigos de dois fatores incorretamente. O número de tentativas inválidas e o período de tempo para os usuários bloqueados podem ser configurados. Opcionalmente, um desenvolvedor pode desativar o Bloqueio de Conta para determinadas contas de usuário, caso precisem.

  • Confirmação da conta: O sistema ASP.NET Identity agora dá suporte à Confirmação da Conta. Esse é um cenário bastante comum na maioria dos sites de hoje em que, quando você se registra para uma nova conta no site, é necessário confirmar seu email antes de fazer qualquer coisa no site. Email Confirmação é útil porque impede que contas falsas sejam criadas. Isso é extremamente útil se você estiver usando o email como um método de comunicação com os usuários do seu site, como sites do Fórum, bancos, comércio eletrônico ou sites sociais.

  • Redefinição de senha: A Redefinição de Senha é um recurso em que o usuário pode redefinir suas senhas se tiver esquecido sua senha.

  • Selo de Segurança (Sair em todos os lugares): Dá suporte a uma maneira de regenerar o Token de Segurança para o usuário nos casos em que o Usuário altera sua senha ou qualquer outra informação relacionada à segurança, como remover um logon associado (como Facebook, Google, Conta microsoft e assim por diante). Isso é necessário para garantir que todos os tokens gerados com a senha antiga sejam invalidados. No projeto de exemplo, se você alterar a senha do usuário, um novo token será gerado para o usuário e todos os tokens anteriores serão invalidados. Esse recurso fornece uma camada extra de segurança para seu aplicativo, pois quando você altera sua senha, você será desconectado de todos os lugares (todos os outros navegadores) em que fez logon neste aplicativo.

  • Torne o tipo de Chave Primária extensível para Usuários e Funções: no ASP.NET Identity 1.0, o tipo de chave primária para a tabela Usuários e Funções era cadeias de caracteres. Isso significa que, quando o sistema de identidade do ASP.NET foi persistente em SQL Server usando o Entity Framework, estávamos usando nvarchar. Houve muitas discussões sobre essa implementação padrão no Stack Overflow e com base nos comentários de entrada. Fornecemos um gancho de extensibilidade em que você pode especificar o que deve ser a chave primária da tabela Usuários e Funções. Esse gancho de extensibilidade será particularmente útil se você estiver migrando seu aplicativo e o aplicativo estiver armazenando UserIds são GUIDs ou ints.

  • Suporte a IQueryable em usuários e funções: adicionado suporte para IQueryable em UsuáriosStore e RolesStore, você pode obter facilmente a lista de Usuários e Funções.

  • Operação de exclusão de suporte por meio do UserManager

  • Indexação no UserName: na implementação do ASP.NET Identity Entity Framework, adicionamos um índice exclusivo ao Nome de usuário usando o novo IndexAttribute no EF 6.1.0. Isso garante que os nomes de usuário sejam sempre exclusivos e que não havia nenhuma condição de corrida na qual você poderia acabar com nomes de usuário duplicados.

  • Validador de Senha Aprimorado: O validador de senha que foi enviado no ASP.NET Identity 1.0 era um validador de senha bastante básico que validava apenas o comprimento mínimo. Há um novo validador de senha que fornece mais controle sobre a complexidade da senha. Observe que, mesmo que você ative todas as configurações nessa senha, recomendamos que você habilite a autenticação de dois fatores para as contas de usuário.

  • IdentityFactory Middleware/ CreatePerOwinContext:

    • Gerenciador de Usuários: você pode usar a implementação de Fábrica para obter uma instância do UserManager do contexto OWIN. Esse padrão é semelhante ao que usamos para obter AuthenticationManager do contexto OWIN para SignIn e SignOut. Essa é uma maneira recomendada de obter uma instância de UserManager por solicitação para o aplicativo.
    • DbContextFactory: ASP.NET Identity usa o Entity Framework para persistir o sistema de identidade em SQL Server. Para fazer isso, o Sistema de Identidade tem uma referência ao ApplicationDbContext. O Middleware DbContextFactory retorna uma instância do ApplicationDbContext por solicitação que você pode usar em seu aplicativo.
  • pacote NuGet de exemplos de identidade ASP.NET: o pacote NuGet de exemplos pode facilitar a instalação e a execução de exemplos para ASP.NET Identity e seguir as práticas recomendadas. Este é um exemplo ASP.NET aplicativo MVC. Modifique o código para se adequar ao aplicativo antes de implantá-lo em produção. O exemplo deve ser instalado em um aplicativo ASP.NET vazio. Para obter mais informações sobre o pacote, vá para a seguinte postagem no blog: Anunciando RTM de ASP.NET Identity 2.0.0

Componentes Microsoft OWIN

Houve muitos bugs que foram corrigidos nesta versão.

ASP.NET SignalR 2.0.2

Houve muitos bugs que foram corrigidos nesta versão. Confira as notas sobre a versão 2.0.2 para obter informações mais detalhadas.