У меня есть это приложение, которое на самом деле является двумя приложениями, веб-приложениями и консольным приложением. Консольное приложение используется в качестве запланированной задачи на машине Windows и выполняется 3 раза в день до некоторой повторяющейся работы. Оба приложения используют одну и ту же модель и репозиторий, которые помещаются в отдельный проект (библиотека классов). Проблема заключается в том, что если консольному приложению необходимо внести изменения som в базу данных, он обновляет модельный объект и сохраняет изменения в базе данных, но когда это происходит, контекст в webbapplication не знает об этом, и поэтому контекст объекта не обновляется с помощью новые/обновленные данные и пользователь приложения не могут видеть изменения.Убедитесь, что структура Entity всегда читает из базы данных?
Мой вопрос: есть ли способ сообщить объекту contexttext всегда загружать данные из базы данных, будь то в объекте objectcontext или для конкретного запроса?
/Отношения Vinblad
Это неправда. Если вы запустите свой запрос, измените свои данные в БД и снова запустите запрос в том же контексте, вы не получите новые данные. ObjectContext реализует несколько шаблонов - это называется Identity Map, что означает, что объект одного и того же ключа загружается только один раз. –
Спасибо Yakimych за информацию, ссылку, которую вы мне предоставили, меня в правильном направлении, оказалось, что мне нужна поддержка PerWebRequest в Unity (я использовал эту реализацию, которая, похоже, работает: http://weblogs.asp.net /rashid/archive/2009/02/15/asp-net-mvc-unity-and-common-service-locator.aspx) – Vinblad
@Ladislav - спасибо за исправление! @Vinblad - рад, что я мог бы помочь;) – Yakimych