Буду очень признателен за совет по поводу этой предстоящей проблемы, которую мне нужно решить.
У меня есть две отдельные бизнес-системы (назовем их Системой A и Системой B), обе разработаны в Asp.Net MVC 5 и Entity Framework 5. Обе системы используют отдельные базы данных MS SQL Server. Обе системы размещены на одном веб-сервере.
В прошлом никогда не было никакой связи между системами, однако теперь мне нужно сделать некоторые данные, хранящиеся в Системе A, доступными в Системе B.
Например, система A имеет таблицу базы данных, подобную этой:
tblCourse -> Id, наименование курса, дата курса
И теперь мне нужно сделать данные в этой таблице доступными для пользователей системы B. Когда я говорю «сделать доступными для пользователей системы B», я имею в виду, что эта информация также должна храниться в таблице базы данных системы B.
В настоящий момент я не уверен, как это сделать, поскольку мне никогда не приходилось извлекать данные из нескольких баз данных для одного веб-приложения.
Мне нужно исследовать это дальше, но в данный момент я думаю, что это могут быть возможные варианты:
Создайте в моем файле web.config для системы B вторую строку соединения с базой данных, которая будет указывать на базу данных системы A. Затем используйте это соединение для извлечения данных из требуемой таблицы в системе A в систему B. I я не уверен, возможно ли это вообще или как это интегрируется с моей моделью Entity Framework, которая уже будет основана на моей базе данных для системы B.
Создайте запланированное задание (хранимые процессы) в Quartz.Net, который будет запускаться каждую ночь для чтения данных из требуемой таблицы в системе A и вставки в систему B.
Создайте внутри решения API для системы A, который будет предоставлять информацию, необходимую для системы B, прочитайте ее и вставьте данные в базу данных для системы B. Я никогда раньше не создавал API и не уверен, что это так подойдет для этой проблемы.
Любой совет действительно ценится.