質問
私はこのLINQクエリとの問題を抱えて
from PersistedFileInfo fi in m_Database
from PersistedCommit commit in m_Database
where commit.FileIDs.Contains( fi.ID )
where fi.Path == <given path>
select new Commit( m_Storage, commit );
あなたが見ることができるようには、すべてのPersistedCommit
は、そのCollection<int>
sに接続しFileIDs
と呼ばれるPersistedFileInfo
が含まれています。私は(そのパスで識別される)特定のfileInfoのすべての以前のコミットを選択します。
私は約800 PersistedFileInfo
sと10 PersistedCommit
sを持っています。あまりにも長い間、私のopitionである - クエリは、約1.5秒かかります。ここでは、そう何timelossはありません。
Commit
-オブジェクトのコンストラクタは、2つのだけ与えられた引数を保存します。
私の質問:
このクエリは、より良い実行するために書き換えることができます - ?(代わりにSODAクエリを使用)、または、それはdb4oの問題です。
解決
してくださいNQが実際に最適化されているかどうかを確認(こちらをご覧くださいを)。そうでない場合は、あなたの最善の策は、自分自身を照会SODAにこれを翻訳することです。
ゴラン
所属していません StackOverflow