Заметки о выпуске ASP.NET and Web Tools 2012.2 (RTW)

В этом документе описывается выпуск ASP.NET and Web Tools 2012.2. Это обновление веб-инструментов и ASP.NET Visual Studio.

Замечания по установке

ASP.NET and Web Tools 2012.2 для Visual Studio 2012 можно установить с помощью установщика веб-платформы. Это обязательное обновление для Visual Studio 2012 или Visual Studio Express 2012 для Web. Если у вас не установлена Среда Visual Studio, будет установлена Visual Studio Express 2012 для Web.

Вы также можете установить ASP.NET and Web Tools 2012.2 вручную. Необходимо установить Visual Studio 2012 или Visual Studio Express 2012 for Web. Затем выполните следующие инструкции:

  1. Скачайте установщик ASP.NET и Web Framework 2012.2 из Центра загрузки.
  2. При появлении запроса нажмите кнопку Выполнить. Вы также можете сохранить файл, чтобы запустить его позже.
  3. Проверьте версию Visual Studio, который вы будете обновлять. Это можно сделать, запустив Visual Studio, которую вы хотите обновить. Затем щелкните пункт меню Справка.
    Снимок экрана: раскрывающееся меню
  4. Если вы видите пункт меню "Сведения о Microsoft Visual Studio 2012 для Интернета", скачайте Средства веб-разработчика 2012.2 — Visual Studio Express 2012 для Интернета. В противном случае скачайте Средства веб-разработчика 2012.2 — Visual Studio 2012.
  5. При появлении запроса нажмите кнопку Выполнить. Вы также можете сохранить файл, чтобы запустить его позже.

Примечание

ASP.NET and Web Tools выпуск 2012.2 не включает SQL Server Data Tools. SQL Server и Базы данных Windows Azure SQL предоставляют более широкий набор инструментов для баз данных, включая автономную разработку на основе проектов, сравнение схем и расширенные возможности развертывания баз данных. Дополнительные сведения или сведения об установке SQL Server Data Tools см. на сайте https://go.microsoft.com/fwlink/?LinkID=237127.

Документация

Руководства и другие сведения о ASP.NET and Web Tools 2012.2 доступны на веб-сайте ASP.NET ( https://www.asp.net).

Поддержка

ASP.NET and Web Tools 2012.2 официально выпущена и поддерживается. Вы можете использовать обычный канал поддержки. Вы также можете публиковать вопросы на форумах ASP.NET (https://forums.asp.net/), где члены ASP.NET сообщества часто могут оказывать неофициальную поддержку.

Требования к программному обеспечению

Для ASP.NET and Web Tools 2012.2 требуется Visual Studio 2012 или Visual Studio Express 2012 для Web.

Новые возможности в ASP.NET and Web Tools 2012.2

В этом разделе описываются функции, появившиеся в выпуске ASP.NET and Web Tools 2012.2.

Инструментарий

  • Инспектор страниц

  • Редактор

    • Поддержка выделения синтаксиса для CoffeeScript, Mustache, Handlebars и JsRender.
    • Редактор HTML предоставляет Intellisense для привязок Knockout.
    • Поддержка редактирования LESS и компилятора для создания динамического CSS с помощью LESS.
    • Вставьте JSON как класс .NET. С помощью этой команды Специальная вставка вставьте JSON в файл кода C# или VB.NET, и Visual Studio автоматически создаст классы .NET, выведенные из JSON.
  • Поддержка мобильного эмулятора добавляет обработчики расширяемости, чтобы сторонние эмуляторы можно было установить в виде VSIX. Установленные эмуляторы будут отображаться в раскрывающемся списке F5, чтобы разработчики могли просматривать свои веб-сайты на различных мобильных устройствах. Дополнительные сведения об этой функции см. в записи блога Скотта Хансельмана о новой интеграции BrowserStack с Visual Studio.

Веб-публикация

  • Проекты веб-сайтов теперь имеют те же возможности публикации, что и проекты веб-приложений, включая публикацию на веб-сайтах Windows Azure.

  • Выборочная публикация — для одного или нескольких файлов можно выполнить следующие действия (после публикации в конечной точке веб-развертывания):

    • Публикация выбранных файлов.
    • Ознакомьтесь с разницей между локальным и удаленным файлами.
    • Обновите локальный файл с помощью удаленного файла или обновите удаленный файл с помощью локального файла.

ASP.NET шаблонов MVC

  • Новый шаблон приложения Facebook упрощает создание приложений Facebook Canvas. Всего за несколько простых шагов можно создать приложение Facebook, получающее данные от выполнившего вход пользователя и передающего их его друзьям. Шаблон содержит новую библиотеку, предназначенную для выполнения любых операций по проектированию приложений Facebook, включая проверку подлинности, разрешения, доступ к данным Facebook и многое другое. Дополнительные сведения об использовании шаблона приложения Facebook см. в разделе https://go.microsoft.com/fwlink/?LinkID=269921.
  • С помощью нового шаблона одностраничного приложения MVC разработчики могут создавать интерактивные клиентские веб-приложения, применяя в веб-API ASP.NET код HTML 5 и CSS 3, а также используя популярные библиотеки Knockout и jQuery JavaScript. Шаблон включает в себя приложение списка дел, демонстрирующее распространенные методики создания приложения JavaScript HTML5, использующего СЕРВЕРНЫЙ API RESTful. Дополнительные сведения см. на странице https://www.asp.net/single-page-application.
  • Теперь можно создать VSIX, который добавляет новые шаблоны в диалоговое окно ASP.NET новый проект MVC. Узнайте, как это: https://go.microsoft.com/fwlink/?LinkId=275019
  • Пакет FixedDisplayModes — шаблоны проектов MVC обновлены для включения нового пакета NuGet FixedDisplayModes, который содержит обходной путь для ошибки в MVC 4. Дополнительные сведения об исправлениях, содержащихся в пакете, см. в этой записи блога (/archive/blogs/rickandy/asp-net-mvc-4-mobile-caching-bug-fixed) от команды MVC.

ASP.NET Web API

веб-API ASP.NET дополнена несколькими новыми функциями:

  • веб-API ASP.NET OData
  • Трассировка веб-API ASP.NET
  • Страница справки веб-API ASP.NET

веб-API ASP.NET OData

веб-API ASP.NET OData обеспечивает гибкость, необходимую для создания конечных точек OData с расширенной бизнес-логикой для любого источника данных. С помощью веб-API ASP.NET OData вы управляете семантикой OData, которую вы хотите предоставить. веб-API ASP.NET OData входит в состав шаблонов проектов ASP.NET MVC 4, а также доступен в NuGet (https://www.nuget.org/packages/microsoft.aspnet.webapi.odata).

веб-API ASP.NET OData в настоящее время поддерживает следующие функции:

  • Включите семантику запросов OData, применив атрибут [Queryable].
  • Легко проверяйте запросы OData и ограничивайте набор поддерживаемых параметров запросов, операторов и функций.
  • Параметр напрямую привязывается к ODataQueryOptions, чтобы получить представление запроса в виде абстрактного синтаксического дерева, которое затем можно проверить и применить к IQueryable или IEnumerable.
  • Включите разбиение на страницы на основе служб и создание ссылок на следующую страницу, указав ограничения результатов для атрибута [Запрашиваемый].
  • Запросите встроенное количество соответствующих ресурсов с помощью $inlinecount.
  • Управление распространением значений NULL.
  • Операторы Any/All в $filter.
  • Выведите модель данных сущности по соглашению или явно настройте модель таким образом, как в Entity Framework Code-First.
  • Предоставление наборов сущностей путем наследования от EntitySetController.
  • Простые настраиваемые соглашения для предоставления свойств навигации, управления ссылками и реализации действий OData.
  • Упрощенная маршрутизация с помощью метода расширения MapODataRoute.
  • Поддержка управления версиями путем предоставления нескольких моделей EDM.
  • Предоставление сервисного документа и $metadata для создания клиентов (.NET, Windows Phone, Магазина Windows и т. д.) для веб-API.
  • Поддержка подробных форматов OData Atom, JSON и JSON.
  • Создание, обновление, частичное обновление (PATCH) и удаление сущностей.
  • Запрашивать связи между сущностями и управлять ими.
  • Создайте связи, которые связываются с маршрутами.
  • Сложные типы.
  • Наследование типа сущности.
  • Свойства коллекции.
  • Перечисления.
  • Действия OData.
  • Построен на той же основе, что и WCF Data Services, а именно ODataLib (https://www.nuget.org/packages/microsoft.data.odata).

Дополнительные сведения о веб-API ASP.NET OData см. в разделе https://go.microsoft.com/fwlink/?LinkId=271141.

Трассировка веб-API ASP.NET

Веб-API ASP.NET Трассировка интегрирует данные трассировки из веб-API с трассировкой .NET. Теперь он включен по умолчанию в шаблоне проекта веб-API. Данные трассировки для веб-API отправляются в окно Вывод и предоставляются через IntelliTrace. веб-API ASP.NET Трассировка позволяет отслеживать сведения о веб-API при размещении в Windows Azure путем интеграции с Windows Диагностика Azure. Вы также можете установить и включить трассировку веб-API ASP.NET в любом приложении с помощью пакета NuGet для трассировки веб-API ASP.NET (https://www.nuget.org/packages/microsoft.aspnet.webapi.tracing).

Дополнительные сведения о настройке и использовании трассировки веб-API ASP.NET см. в разделе https://go.microsoft.com/fwlink/?LinkID=269874.

Страница справки веб-API ASP.NET

Страница справки веб-API ASP.NET теперь включена по умолчанию в шаблон проекта веб-API. Страница справки веб-API ASP.NET автоматически создает документацию для веб-API, включая конечные точки HTTP, поддерживаемые методы HTTP, параметры и примеры полезных данных запросов и ответов. Документация автоматически извлекается из комментариев в коде. Вы также можете добавить страницу справки веб-API ASP.NET в любое приложение с помощью пакета NuGet страницы справки веб-API ASP.NET (https://www.nuget.org/packages/microsoft.aspnet.webapi.helppage).

Дополнительные сведения о настройке и настройке страницы справки веб-API ASP.NET см. в разделе https://go.microsoft.com/fwlink/?LinkId=271140.

ASP.NET SignalR

ASP.NET SignalR упрощает добавление веб-возможностей в режиме реального времени в приложение ASP.NET, используя WebSocket (если они доступны) и автоматически возвращаясь к другим методам, когда это не так.

Дополнительные сведения об использовании ASP.NET SignalR см. в разделе https://go.microsoft.com/fwlink/?LinkId=271271.

ASP.NET Friendly URLs

ASP.NET FriendlyURLs позволяет разработчикам веб-форм легко создавать более понятные URL-адреса (без расширения ASPX). Он практически не требует настройки и может использоваться с существующими приложениями ASP.NET версии 4.0. Функция FriendlyURLs также упрощает для разработчиков добавление поддержки мобильных устройств в свои приложения, поддерживая переключение между представлениями рабочего стола и мобильных устройств.

Дополнительные сведения об установке и использовании ASP.NET понятных URL-адресов см. в разделе http://www.hanselman.com/blog/IntroducingASPNETFriendlyUrlsCleanerURLsEasierRoutingAndMobileViewsForASPNETWebForms.aspx.

Известные проблемы и критические изменения

В этом разделе описываются известные проблемы и критические изменения в выпуске ASP.NET and Web Tools 2012.2.

Проблемы с установкой

Неупорядоченные установки Visual Studio 2012

Установка дополнительного номера SKU Visual Studio 2012 после установки ASP.NET and Web Tools 2012.2 потребует операции восстановления. Рассмотрим следующую последовательность:

  1. Установка Visual Studio 2012 Express для Web
  2. Установка ASP.NET and Web Tools 2012.2
  3. Установка Visual Studio 2012 Professional, Premium или Ultimate

Шаг 2 приведет только к установке обновлений для Express for Web. Чтобы убедиться, что дополнительный номер SKU, установленный на шаге 3, содержит обновление, необходимо восстановить ASP.NET and Web Tools 2012.2, чтобы установить обновления для последнего установленного номера SKU. Это также применяется, если номера SKU в шагах 1 и 3 отменяются.

Установка Microsoft ASP.NET and Web Tools 2012.2 при открытии Visual Studio

Если VS открыта во время установки Microsoft ASP.NET and Web Tools 2012.2, Visual Studio может оказаться в плохом состоянии. Рекомендуется, чтобы пользователи закрыли все экземпляры Visual Studio перед продолжением установки.

Отмена установки ASP.NET and Web Tools 2012.2 в середине установки

Отмена установки ASP.NET and Web Tools 2012.2 в середине установки приведет к неправильному состоянию Visual Studio. Чтобы устранить эту проблему, выполните следующие действия.

  • Нажмите Установка и удаление программ
  • Удалите Microsoft ASP.NET and Web Tools 2012.2, если он есть.
  • Переустановка Microsoft ASP.NET and Web Tools 2012.2

После удаления ASP.NET and Web Tools 2012.2 отсутствуют шаблоны ASP.NET MVC 4 и веб-сайт Razor версии 2.

При удалении ASP.NET and Web Tools 2012.2 также будут удалены все шаблоны веб-сайтов ASP.NET MVC 4 и Razor версии 2 из Visual Studio 2012.

Обходной путь — восстановить установку Visual Studio 2012 для переустановки ASP.NET шаблонов веб-сайтов MVC 4 и Razor версии 2.

Проблемы с инструментами

Ошибка NuGet, обнаруженная во время создания проекта

После установки ASP.NET and Web Tools 2012.2 при создании проекта MVC 4 может возникнуть следующая ошибка.

Снимок экрана: сообщение об ошибке Microsoft Visual Studio.

ASP.NET and Web Tools 2012.2 поставляется NuGet 2.1 и обновит расширение в Visual Studio 2012. В некоторых случаях установщик VSIX не сможет правильно обновить VSIX. Следующие действия позволят решить эту проблему.

  1. Запуск Visual Studio 2012 с правами администратора

  2. Перейдите в раздел Сервис-Расширения> и Обновления и удалите NuGet.

  3. Закрытие Visual Studio

  4. Перейдите в папку установки ASP.NET and Web Tools 2012.2:

    1. Для Visual Studio 2012: Program Files\Microsoft ASP.NET\ASP.NET Web Stack\Visual Studio 2012
    2. Для Visual Studio 2012 Express for Web: Program Files\Microsoft ASP.NET\ASP.NET Web Stack\Visual Studio Express 2012 for Web
  5. Дважды щелкните NuGet.Tools.vsix, чтобы переустановить NuGet.

Проблемы с веб-API

Проблемы синтаксического анализа в литералах $filter и DateTime

Анализатору URI OData не удается правильно проанализировать частичные литералы даты и времени. Например, $filter=start eq datetime'2012-12-31T12:00' не удается правильно проанализировать. Обходной путь — использовать полный литерал $filter=start eq datetime'2012-12-31T12:00:00'.

OData не поддерживает имена свойств без учета регистра.

OData не поддерживает имена свойств без учета регистра в запросах OData и пути odata.

Если у пользователей разные регистры на стороне клиента и сервера JavaScript, скорее всего, они столкнутся с этой проблемой. Эта проблема возникает в протоколе odata. Однако многие пользователи сообщают об этой проблеме. Чтобы обойти эту проблему, пользователи должны исправлять свои обращения в URL-адресе.

Соглашения о маршрутизации OData по умолчанию не поддерживают свойство POST/PUT для навигации.

Соглашения о маршрутизации OData по умолчанию не поддерживают свойство POST/PUT для навигации. В соглашениях по умолчанию отсутствует это часто используемое соглашение.

Чтобы обойти эту проблему, пользователям необходимо расширить новое соглашение о маршрутизации для его поддержки.

Проблемы с шаблонами Facebook

Шаблон приложения Facebook работает только с использованием .NET 4.5

Чтобы увидеть шаблон приложения Facebook в ASP.NET MVC 4, необходимо выбрать .NET 4.5 в раскрывающемся списке платформы диалогового окна Новый проект.

Контроллер обновления в режиме реального времени

Шаблон приложения Facebook позволяет пользователю легко создать контроллер веб-API для обработки обновлений в режиме реального времени из Facebook. Если компьютер разработки находится за NAT, контроллер может не работать без дальнейшей настройки сети. Дополнительные сведения см. здесь: http://facebook.stackoverflow.com/questions/5259467/can-a-computer-behind-a-nat-router-receive-realtime-updates-from-facebook

Значения строки запроса конфликтуют с параметрами OAuth Facebook

Следующие поля конфликтуют с URL-адресом обратного вызова диалогового окна Facebook OAuth. Не добавляйте собственные значения строки запроса со следующими именами: code, error, error_description error_reason.

Использование Инспектор страниц с шаблоном Facebook

Вы не можете использовать функцию Инспектор страниц в Visual Studio 2012 при отладке приложения Facebook. В настоящее время Инспектор страниц не поддерживает iframes.

Проблемы с шаблоном одностраничного приложения

В обновлении JQuery 1.9/Knockout 2.2.1 при запуске проекта spa MVC по умолчанию событие изменения элемента списка дел обрабатывается неправильно.

В обновлении JQuery 1.9/Knockout 2.2.1 при запуске проекта MVC SPA по умолчанию новое изменение элемента списка дел больше не будет фокусироваться на новом поле редактирования элемента списка дел после ввода нового элемента списка дел.

Чтобы обойти эту проблему, обратитесь к http://knockoutjs.com/documentation/hasfocus-binding.htmlи внесите аналогичное исправление в следующий пример кода:

todo.model.js файлов
function todolist(data), добавьте следующее:
self.isSelected = ko.observable(false);

функция todoList.prototype.addTodo, добавьте следующий зачерненный текст:
self.isSelected(true);
self.newTodoTitle("");

В файле index.cshtml добавьте следующий черный текст:
<form data-bind="submit: addTodo">
<input class="addTodo" type="text" data-bind="value: newTodoTitle, заполнитель: 'Type here to add', blurOnEnter: true, hasfocus: isSelected, event: { blur: addTodo }" />
</Формы>