Я понимаю, что два обратных вызова HttpWebRequest
могут выполняться одновременно, потому что запрос является асинхронным. Тем не менее, я хочу работать с базой данных в обратном вызове, и это кажется невозможным с SQL Server. Какова наилучшая практика в этом случае? Есть ли способ добавить эти запросы в очередь, или я должен использовать что-то вроде мьютексов (чего я бы предпочел избежать, поскольку взаимоблокировки трудно отлаживать)?Выполнение запроса SQL Server в обратном вызове HttpWebRequest
Редактировать: Мой текущий код не делает ничего особенного, чтобы предотвратить это. Я запускаю несколько (разных) запросов, а иногда в одном из обратных вызовов я получаю заброшенное исключение («Неверный доступ к кросс-потоку»), когда я пытаюсь отправить изменения в базу данных.
Я пытался использовать Dispatcher.BeginInvoke
, но теперь у меня есть сомнения, что он делает то, что я хочу после некоторого Googling (я использовал Dispatcher.BeginInvoke
до того успешно, когда доступ к элементам в моем XAML, так что я подумал, что это может исправить мою проблему с доступом к БД)
@ColinE Вы правы, я должен был сказать вам это в первую очередь. Я обновил свой вопрос –