次のコードがあります。
var docs = ctx.Documents.Select(a =>
new { a.ID, Content = a.Document, a.LastModified, CreatedDate = a.Created });
foreach (var doc in docs)
{
if (Utility.ContinueDocumentPreview)
{
_createFile(doc.ID, doc.Content, doc.CreatedDate, doc.LastModified);
_fireProgress(++counter, count);
}
else
{
break;
}
}
このプロセスの実行中にユーザーが [キャンセル] ボタンをクリックすると、Utility.ContinueDocumentPreview フラグが false に設定されます。問題は、フラグが false で、コードがループから抜け出す必要がある場合です。SQL タイムアウト例外が発生します。
私はこれを間違ってやっていますか?