EF4 возвращает неверные значения при выборе из сводки представление

Я использую EF4 для чтения данных из представления.Это сводное представление с группировкой по и т. д. и только для чтения-у него нет первичного ключа.Поэтому, чтобы импортировать его в EF4, я использовал часто предлагаемый трюк - использовать ISNULL(столбец,-11) в качестве первого столбца в представлении. Это помогает EF4 вывести первичный ключ и импортировать представление.

Однако, когда я выбираю из представления в EF4, происходит очень странная вещь - я получаю неправильный данные по сравнению с тем, когда я напрямую выбираю из представления в Management Studio. Я не мог в это поверить, поэтому я попробовал несколько раз, и ошибка не исчезла. Просто чтобы убедиться, что я создал таблицу в SQL Server, выбрав все из представления и получив доступ к таблице в EF4. Но затем возвращает правильные данные!

Представление не очень сложное, за исключением того, что оно является сводным представлением (группировка по соединениям) и использует табличное выражение SQL Common (т. е. предложение with).

When I select straight in database using select * from vw_responserate I get 

coltext       SurveyId  rowtext1    rowtext2            cnt
Anwender    2   Angestellte/r   Französische Schweiz    1
Anwender    2   Angestellte/r   Italienische Schweiz    1
IT Spezialist   2   Angestellte/r   Deutsche Schweiz    1
IT Spezialist   2   Mittleres Management / Senior Management    Italienische Schweiz    1

When I select from EF4 I get

coltext rowtext1 rowtext2 cnt
Anwender      Angestellte/r Französische Schweiz 1
Anwender      Angestellte/r Französische Schweiz 1
IT Spezialist Angestellte/r Deutsche Schweiz 1
IT Spezialist  Angestellte/r Deutsche Schweiz 1

Будем признательны за любую помощь

спасибо

7
задан josephj1989 30 March 2012 в 14:20
поделиться