У вас есть два варианта.
Создайте отдельные проекты mywebsite.api и mywebsite.app в своем решении.
преимущества
- Правильное разделение интересов.
- Вы можете развернуть обновления для вашего API и вашего интерфейса независимо друг от друга.
- Архитектура сайтов может быть изменена независимо (т.е. вы можете обновить свой API для работы на asp.net 5, не влияя на сайт)
- Очиститель
Создайте один проект с клиентским приложением и API в одном проекте
преимущества
- Проще развернуть обновления
- Не нужно настраивать работу с CORS
Как разместить и разработать приложение локально.
Эффективным решением для разработки является использование lite-сервера для запуска клиентского приложения (Angular 2) и IIS / Casini для размещения вашего кода веб-API. Хороший пример того, как его использовать, приведен в кратком руководстве по Angular 2 (см. Ниже). Мой процесс разработки состоит в том, чтобы запустить API через Visual Studio и работать с кодированием сайта клиента, используя код Visual Studio и lite-сервер (Atom - еще один хороший выбор).
Из документации Lite-сервера. Облегченный сервер только для разработки, который обслуживает веб-приложение, открывает его в браузере, обновляет при изменении html или javascript, внедряет изменения CSS с помощью сокетов и имеет запасную страницу, когда маршрут не найден.
https://code.visualstudio.com/
https://angular.io/docs/js/latest/quickstart.html
https://www.youtube.com/watch?v=e_FVeYWUF3s
https://github.com/johnpapa/lite-server
Мой взгляд
Нет проблем в использовании Nuget / NPM в одном и том же решении, и это не должно отражать ваш выбор структуры проекта.
Я использую единственный проектный подход для демонстрации / проверки концептуальных приложений. Для производственных выпусков я всегда буду должным образом отделять свои проблемы и выделять отдельный проект API.