Рекомендации по использованию SQL Server CE в многопоточном приложении (Windows Phone 7) - PullRequest
1 голос
/ 27 января 2012

Есть ли рекомендации по использованию SQL Server CE в многопоточном приложении?

Я начну с этого

Datacontexts не являются поточно-безопасными

Я думаюдолжно быть больше проблем, потому что я все еще получаю межпоточные сбои в моем приложении, такие как

System.InvalidOperationException не обработан
Сообщение = Операция не может быть выполнена, потому что операция в другом потоке не былазавершено.
StackTrace:
в System.Data.Linq.SqlClient.SqlConnectionManager.CheckThreadId ()
в System.Data.Linq.SqlClient.SqlConnectionManager.BootUser (Int32 userIndex ).D 1014 * в atata,subQueries, Object lastResult, Boolean isCompiledQuery)
в System.Data.Linq.SqlClient.SqlProvider.ExecuteAll (запрос выражения, QueryInfo [] queryInfos, фабрика IObjectReaderFactory, объект [] userArguments, вспомогательные запросы ICompiledSubQuery [], логический isCompiledQuery)
в System.Data.Linq.SqlCrovid.SqlCrov.Provider.IProvider.Execute (запрос выражения)
в System.Data.Linq.DataQuery`1.System.Collections.Generic.IEnumerable.GetEnumerator ()
в App.ViewModel.LoadData (Отправитель объекта, DoWorkEventArgs e)
в System.ComponentModel.BackgroundWorker.OnDoWork (DoWorkEventArgs e)
в System.ComponentModel.BackgroundWorker.OnRun (аргумент объекта)
в System.Threading.ThreadPool.WorkItem.WaitCallback_Connect_Connectв System.Threading.ExecutionContext.Run (ExecutionContext executeContext, обратный вызов ContextCallback, состояние объекта)
в System.Threading.ThreadPool.WorkItem.doWork (объект o)
в System.Threading.Timer.ring ()

...