2

モデルにビューを追加しました。その後、ドメインサービスを作成しました。

ビューデータをグリッドに追加しようとしました。

VReportViewer.GrdReport.ItemsSource = dcBusinessAccountingContext.SalesDetailViews;    

SQLServerで同じビューで実行した場合。170行のデータを取得しています。しかし、エンティティを使用すると、94行のデータしか取得できません。どのボディでも、どこでミスをしているのかを知ることができますか。

4

1 に答える 1

0

ビュー内のエンティティ キーを edmx にチェックします。

ADO.Net エンティティ データ モデル (edmx ファイル) に、テーブルとビューを見つけることができます。新しいビューがインポートされると、いくつかのフィールドが自動的に「エンティティ キー」として設定されます (フィールドをクリックしてプロパティを確認します)。自動生成されたエンティティ キーが間違っている場合があります。この場合、linq クエリを実行すると、SQL とは結果が異なります。この問題を解決するには、正しい「エンティティ キー」を見つけるか、すべての「エンティティ キー」を削除します (読み取り専用ビュー)。各フィールドの nullble/null 不可プロパティも確認し、正しい方法で設定します。

これは、同様のケースで機能します。(遅れてすみません)この助けを願っています。

于 2012-10-20T11:45:23.383 に答える