Ответ 1
Зачем создавать проект библиотеки классов ASP.NET 5?
Существует несколько преимуществ проектов ASP.NET 5 Class Library (.kproj) над проектами библиотеки классов (.csproj):
- Библиотеки классов ASP.NET 5 легко поддерживают кросс-компиляцию проектов для нескольких целей, таких как
aspnet50
,aspnetcore50
,net45
и различные другие переносимые библиотеки классов. Это включает в себя богатую поддержку Visual Studio для Intellisense, чтобы уведомить вас, какие API-интерфейсы доступны для каких целей. - Пакеты NuGet автоматически создаются, что очень часто встречается с библиотеками классов.
- Лучшая производительность, когда дело касается таких вещей, как автоматическое обновление обозревателя решений при изменении файловой системы. Меньше конфликтов в исходном управлении при попытке слить конфликтующие изменения в файле *.csproj.
- Может быть скомпилирована кросс-платформенная (отчасти потому, что она не зависит от MSBuild)
Вы можете ссылаться на проект *.csproj из проекта *.kproj(это было сделано намного проще с новым предварительным просмотром Visual Studio 2015), но это всегда было возможно с помощью некоторых ручных шагов.
Почему у этого имени есть "ASP.NET"?
Что касается названий, это реликвия истории, которая скоро будет решена. Новый тип проекта полезен далеко за пределами приложений ASP.NET 5. Ожидайте увидеть новые имена в будущем представлении Visual Studio:
- Приложение .NET Console (кросс-платформенная)
- Библиотека классов .NET(кросс-платформенная)
Обновление 5/13/2015
С выпуском Visual Studio 2015 RC вы можете увидеть обновленные имена шаблонов проекта:
- Библиотека классов (пакет)
- Консольное приложение (пакет)
Они используют файл project.json
и среду выполнения .NET(DNX) для сборки, запуска и пакета (в пакет NuGet) проекта.
Эти шаблоны проектов продолжают отображаться в диалоговом окне "Новый проект" под "Web" node, но теперь также отображаются в основном "Visual С#" node.