Несколько edmx в одном решении.net
У меня есть 2 проекта в моем решении.net. Каждый из них имеет модель данных объекта. Как я могу сделать связь между двумя объектами, один в первой модели данных проекта, а другой во второй модели данных проекта в том же решении?
Что делать, если каждая модель данных сопоставлена с другой базой данных?
2 ответа
Насколько я знаю, вы не можете достичь этого в рамках разумного решения.
Невозможно установить связь между двумя полями в отдельных базах данных, однако вы можете сделать это, конечно же, с помощью логики на стороне сервера в коде приложения. Если вы это сделаете, убедитесь, что вы добавили триггер для обеспечения ссылочной целостности, чтобы убедиться, что связь может быть установлена, если для нее требуется, чтобы поле не было нулевым
Добавить отношение внешнего ключа между двумя базами данных
Create Trigger dbo.MyTableTrigger ON dbo.MyTable, After Insert, Update
As
Begin
If NOT Exists(select PK from OtherDB.dbo.TableName where PK in (Select FK from inserted) BEGIN
-- Handle the Referential Error Here
END
END