Я уверен, что это должен быть наивный вопрос, но у меня есть проект C#, .Netcore 3.1, который имеет два подпроекта. Оба подпроекта являются MVC приложениями, хотя одно называется «APP», а другое «API».
Этот проект существует в .Netcore 2.2 и в целом работает. Возникла конкретная проблема, и я подумал, исправит ли это попытка последней версии, поэтому я создал новую версию 3.1, переместил файлы ...
Хорошо, в версии 2.2 у меня есть папки Models
в каждой подпапке проект. У каждого есть точно такие же модели. Я использовал команду Scaffold-DbContext
package manager для их сборки. Было бы разумно иметь возможность выделить общие модели, но я не знаю / не знаю, как это сделать.
В версии 3.1 я посещаю первый подпроект (API) и выполняю леса и это работает. Затем я пытаюсь сделать то же самое в версии APP и получаю сообщение:
PM> Scaffold-DbContext -Connection "Server=db.my.company.com;Initial Catalog=MyDB;Integrated Security=True" -Context MyDbContext -Schemas "MySchema" -Provider Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models\MySchema -Force
Build started...
Build succeeded.
Could not load assembly 'API'. Ensure it is referenced by the startup project 'APP'.
Это не то, что я ожидал. Кажется, что-то из подпроекта API просачивается в подпроект APP. Я ожидал, что леса просто соберут модели из удаленной БД и вставят полученные файлы в папку Models текущего активного проекта.
Я использовал WinGrep
для поиска API
в разделе APP
и ничего не вижу.
Если ответ состоит в том, чтобы выделить дублированные модели и позволить обоим подпроектам использовать их, пожалуйста, дайте мне знать, как это делается, и / или укажите правильные документы.