最近、データベースに7つのビューを追加しました。そのデータベースのデータモデルを含むプロジェクトに移動し、リバースエンジニアリングコードファースト(EF 4.3.1)を使用すると、いくつかのビューが生成されません。
最初は、他のビューに依存していたいくつかのビューが何らかの理由で順序が狂っており、プロセスに影響を与えている可能性がある、ある種の順序の問題があると思いました。ビューの名前を変更して、SQL ServerManagementStudioで必要な順にアルファベット順に表示されるようにしました。
これは役に立たなかったようです。
生成される5つのビューは、実際にそこにある必要がある最初の5つのビューです。ただし、最後の2つのビューは、生成されていないビューです。
最初の3つを除くすべてのビューには、他のビューの結合が含まれているため、結合が問題になることはないと思います。
ただし、欠落している両方のビューに集計(SUMおよび適切なGROUP BY関数)が含まれているように見えますが、最初の5つには含まれていません。
いくつかの検索を行いましたが、リバースエンジニアリングコードファーストに関して集計関数に制限があることはどこにも見当たりません。この問題の回避策はありますか?
更新:
新しいプロジェクトを作成し、独自の複雑な既存のデータベースを使用する代わりに、Adventureworksを使用してみました。私がそれをリバースエンジニアリングしたとき、集計を含むビューは実際にEFによって適切にモデル化されました。
このビュー(Sales.vSalesPersonSalesByFiscalYears)を見ると、すべての集計がピボットを使用して行われていることがわかりました。そこで、代わりにピボットを使用するために集計を使用するビューを書き直しました。それらはまだインポートされません。