У меня есть два сервиса: MatchMakingService и UserService. У меня есть консольное приложение миграции, использующее. net ядро и Entity Framework Core, которое создает схему базы данных для обеих служб.
В схеме UserService есть объект (UserInformation), который имеет отношение один к одному сущности (UserGameInformation) из MatchMakingService.
Этот код такой же, как в общей базе данных для приложения.
public class UserInformation
{
string id {get; set;}
string name {get; set;}
UserGameInformation UserGameInformation {get; set;}
}
public class UserGameInformation
{
string id {get;set;}
string name {get;set;}
}
Но что если я захочу перевести это на архитектуру схемы для службы? Должен ли я использовать строку для ссылки на идентификатор объекта в другой схеме и делать запросы всякий раз, когда это необходимо, или я могу иметь внешний ключ для этого объекта, и если это так, есть ли какие-либо миграции, чтобы не дублировать таблицы в каждой созданной схеме?
Я также хотел бы знать, хорошо ли устанавливать уникальный проект для создания миграций для каждой службы приложения и создания отдельной схемы для каждого контекста службы. Или лучше использовать миграцию для каждого сервиса.