Применение нескольких решений - PullRequest
0 голосов
/ 25 марта 2019

Я планирую создать сайт с использованием ASP.NET Core 2.0, Entity Framework Core, Angular.

Я планировал создать одно решение с разными проектами (ядро, уровень данных, пользовательский интерфейс ...и т. д.) однако клиент заявил, что «это плохая идея, пожалуйста, создайте отдельное решение для вашего пользовательского интерфейса и API).

как я могу создать несколько решений и при этом позволить им взаимодействовать друг с другом? Какова лучшая практика?? Если я создаю отдельное решение для своего пользовательского интерфейса, как я могу общаться с EF-контекстом, который находится в другом решении?

Ответы [ 3 ]

1 голос
/ 25 марта 2019

Решение - это просто логический контейнер для проектов, поэтому вы можете создать несколько решений, которые будут ссылаться на одни и те же (существующие) проекты.Это довольно распространено для больших решений, таких как, например, Xamarin.Forms - вы можете иметь одно большое решение со всеми проектами, а затем иметь более мелкие решения для разработчиков, которым нужно работать только с подмножеством проектов.

Чтобы добавить существующий проект в свое решение, щелкните правой кнопкой мыши решение в Обозреватель решений и выберите Добавить - Существующий проект .

1 голос
/ 25 марта 2019

Я думаю, что ваш клиент может неправильно понять, что такое решение.Группировка ваших проектов в решении влияет только на ваше рабочее пространство в Visual Studio, это не означает, что ваши проекты имеют зависимости между ними (если вы явно не скажете это в их ссылках)

0 голосов
/ 25 марта 2019

Единственный способ представить эту работу - предоставить каждое решение в виде набора микросервисов.

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

Таким образом, у вас будет набор служб данных, которые инкапсулируют Entity Framework и предоставляют данные через веб-API, а также API бизнес-логики, доступный через веб-API, и затем ваш пользовательский интерфейс (который должен включатьAngular).

API, вызывающие API.Добро пожаловать на микросервисы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...