2011-06-30 8 views
1

SQL ServerデータベースのビューでLinqを使用しています。具体的な文章は次のとおりです。Linq Toビューを使用しているエンティティは重複した値を返しています

var valoresFiltrados = Context.VDoNotUse_v2.Select(doNotUse => doNotUse).Where(doNotUse => doNotUse.PlatformValue.Equals(platform) && doNotUse.Bank.Equals(bank) && doNotUse.LanguageValue.Equals("CZE_CZ")).OrderBy(doNotUse => doNotUse.ID); 

ここで、VDoNotUseはビューのエンティティです。この例で示すように、このsenteceは重複した値を返しています(最初のIDはたとえば12170,12171,12170,12171,12204 ...)。これらの値は順序付けされていません。私は次の文(私はLINQの1に相当します確信している)でSqlDataAdapterオブジェクトを使用する場合は、それが動作し、正しい値を返します。もちろん

"SELECT * FROM VDoNotUse_v2 WHERE PlatformValue = '" + platform + "' AND Bank = '" + bank + "' AND LanguageValue = 'CZE_CZ' order by id asc" 

を、それらの両方は、同じを使用しています接続とデータベース。

これはなぜ起こっているのですか?

答えて

0

エンティティデータモデル内のエンティティキーがビューに正しく設定されていることを確認する必要があります。私はデフォルトのエンティティキーは通常間違っていることがわかります。

関連する問題