3

(a) 何か間違ったことをした、または (b) サポートされていないことをしようとしていると思われる天気を伝えるためのちょっとしたアドバイスを期待しています。

DbContextQuickBooks から with テーブルのコードを生成しました。決して使用しないテーブルがたくさんありますが、害はないと思いました。

SaveChanges()Customer テーブルに 1 回挿入した後に呼び出そうとするまで、すべてがうまくいっていました。テスト ケースは成功しましたが、実行時間は 1 ~ 2 分でした。

次に、Customer テーブルと関連する 2 つのテーブルを除くすべてを削除したところ、同じテストが 2 ミリ秒で成功しました。

エンティティ フレームワークがコンテキスト内で何百ものテーブルを処理しないのと同じくらいプライムタイムに驚いているので、おそらく何か間違ったことをしていると思います。そうでない場合は、それについて知りたいだけです。私は文句を言っているわけではありません。実際にはそれほど多くは必要ありません。

私が行っていることを通常のシナリオから外れる可能性があると考えたのは、1 つの巨大な移行ですべてのテーブルを追加したことです。これらのバイナリ移行オブジェクトは実行時に参照されますか?

私が参照している DbContext の完全なコードは次のとおりです: https://gist.github.com/4677208

4

1 に答える 1

0

最初の実行前にデータベースはありましたか?

データベースが最初に生成されたときにSaveChanges()を呼び出すと、Seedメソッドまたは他の場所での初期化時に、テーブルや複雑なロジック、またはデータ転送が多い場合は時間がかかる可能性があります。

したがって、単一の顧客を挿入するだけでなく、すべてを生成するのに多くの時間がかかる可能性があります。

最初の顧客をコミットした後に別の顧客を追加してみて、どのくらいの時間がかかるかを確認してください。

于 2013-01-31T07:50:14.160 に答える