Невозможно привести объект типа 'System.Linq.EnumerableQuery`1 [Entities.Test]' к типу 'System.Data.Objects.ObjectQuery`1 [Entities.Test]'

Я использую Entity Framework 4.2 (EntityFramework .dll v4.0.30319) Сначала код и запрос LINQ, который можно упростить до:

IQueryable<Test> testQuery = from test in repository.Tests select test;

Репозиторий . Тесты - это IQueryable , реализованный непосредственно как DbSet <Тест> в DbContext Enity Framework.

Я заметил, что мои запросы в какой-то степени чувствительны к регистру при сортировке без учета регистра в базе данных Microsoft SQL Server. Подозрительно, поэтому я хотел отследить SQL. Но когда я делаю это:

var trace = ((ObjectQuery<Test>)testQuery).ToTraceString();

Я получаю исключение:

Невозможно преобразовать объект типа «System.Linq.EnumerableQuery 1 [Entities.Test]» в тип «System.Data.Objects.ObjectQuery 1 [Entities.Test] '.

Почему это происходит?

5
задан SchmitzIT 21 November 2012 в 09:35
поделиться