Я предоставляю некоторые представления базы данных в моей модели сущностей, потому что существуют сложные запросы, которые не могут быть реализованы с использованием стандартного синтаксиса запросов OData. Я использую Службы данных WCF для предоставления этих объектов сторонним приложениям. В основном, есть некоторые потоки, которые меняют мои сущности в слое EF. Я понял, что объект, представляющий представление базы данных, не содержит самых актуальных данных, поскольку использует кэш EF и не загружает данные из базы данных. Объекты, представляющие таблицы базы данных, всегда актуальны. Чтобы убедиться, что объект, представляющий представление databae, содержит самые актуальные данные, AFAIK a MergeOptions должен быть установлен в NoTracking, затем EF выполняет запрос в базе данных и забывает о кэшированных значениях.
Теперь мой вопрос. Можно ли использовать CurrentDataSource, доступный в операциях службы, вместе с MergeOptions, чтобы заставить EF забыть о кэшированных объектах и выполнять запрос каждый раз в БД? Или есть ли другие способы определить, что в запросе EF не предполагается использовать кэшированные значения сущностей, а вместо этого выполнять RAW SQL?