ADO.NET Data Services «Астория» и кэширование

голоса
1

Я только начал погружение в службы данных ADO.NET для проекта, и я быстро столкнулся с проблемой. Сначала я был поражен производительность, но потом я понял, что данные в кэше. Мой проект основан на данных в реальном времени, и я хотел бы использовать синтаксис запроса ADO.NET Data Services REST (без необходимости использовать WCF или SOAP), но без кэширования.

Я видел на услуги вводных данных страницы ADO.NET ( здесь ) , что они еще не имеют поддержки API для управления длительностью кэша или что - либо подобное.

Кто-нибудь есть какие-либо идеи, как это сделать, или отключить кэш?

Задан 09/12/2008 в 17:05
источник пользователем
На других языках...                            


4 ответов

голоса
2

По умолчанию контекст данных имеет MergeOption набор для AppendOnly. Это означает, что повторные запросы будут только добавлять новые объекты и не будут обновлять существующие. Попробуйте установить MergeOption в OverwriteChanges:

this.context.MergeOption = MergeOption.OverwriteChanges;

Это работает для меня, когда я это заметил! Если вы используете реальные данные времени, то вы можете отключить отслеживание изменений полностью с опцией NoTracking.

Ответил 06/10/2009 в 14:39
источник пользователем

голоса
2

Мы сделали запись в последнее время о том , как использовать ETags контролировать политику кэширования данных , возвращаемых из службы данных, http://blogs.msdn.com/astoriateam/archive/2008/04/22/optimistic-concurrency-data-services .aspx

Ответил 24/12/2008 в 23:47
источник пользователем

голоса
0

В глубине подробно о ETag

Ответил 15/07/2009 в 15:34
источник пользователем

голоса
0

Эта связь является полезным, но это на самом деле не говорить о ETags и кэширования, он просто упоминает , что ETags может использоваться для кэширования. Есть ли у вас пример?

Ответил 05/01/2009 в 00:46
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more