Как я могу использовать несколько баз данных в решении на основе Entity Framework одновременно? - PullRequest
3 голосов
/ 01 июня 2011

У меня есть две несвязанные базы данных, и мне нужно передавать данные между ними.Прямо сейчас я создал две отдельные модели сущностей - по одной для каждой базы данных - но это вызывает проблемы в моем коде b / c, я должен сделать Использование nameofcontext / End Using, и когда я пытаюсь затем использовать некоторые результаты из первойраздел кода за секунду Использование nameofcontext / End Использование не нравится - b / c Я закрыл соединение с первой базой данных!

1 Ответ

3 голосов
/ 01 июня 2011

Поскольку это веб-сайт, вы можете создать один экземпляр каждого контекста в событии BeginRequest Global.asax и удалить этот экземпляр в EndRequest.Это означает, что в течение остальной части жизненного цикла события у вас есть контексты, которые останутся открытыми и могут делать то, что вам нужно, но вы все равно знаете, что они правильно утилизируются.

Вот как я справлялся с проблемамикак это.

Примечание: не храните контекст в глобальной общей переменной, потому что это разделит его между несколькими запросами, и havok обеспечит.HttpContext.Current.Items позволяет вам хранить что-то, что легко получить в вашем коде, но специфично для текущего запроса, так что это безопасное место для их хранения.

...