Отмена запроса Entity Framework

Я сейчас пишу диспетчер запросов для приложения WinForms, который, среди прочего, он должен иметь возможность предоставлять пользователю результаты поиска в режиме реального времени, когда он вводит запрос (подумайте о результатах Google в реальном времени, хотя, очевидно, в среде толстого клиента, а не в Интернете). Поскольку результаты должны поступать по мере ввода пользователя, поиск будет становиться все более и более конкретным, поэтому я хотел бы иметь возможность отменить запрос, если он все еще выполняется, пока пользователь ввел более конкретную информацию (поскольку результаты будут в любом случае просто отбросить).

Если бы это был обычный ADO.NET, я бы, очевидно, мог бы просто использовать функцию DbCommand.Cancel и покончить с ней, но мы используем EF4 для доступа к данным и не существует очевидного способа отменить запрос. Кроме того, открыв System.Data.Entity в Reflector и посмотрев на EntityCommand. Можно ли отменить запрос EF4, который выполняется в данный момент?

27
задан Adam Robinson 28 February 2011 в 15:30
поделиться