最近、SharePoint ワークフローを開発する必要がありましたが、正直なところ、これまでに取り組んできた中で最も骨の折れるプログラミング作業でした。私が抱えていた大きな問題の 1 つは、デバッガーでステップ実行する必要があるときに遭遇した問題でした。
SharePoint ワークフローをデバッグする方法に関する記事がここにあり、ブレークポイントの設定方法などを説明しています。これには、ワークフローを含む .dll ファイルと一緒に .pdb ファイルを GAC にコピーすることが含まれます。Windows エクスプローラーでは c:\windows\assembly の関連するサブディレクトリを表示できないため、コマンド プロンプト (またはバッチ ファイル) からこれを行う必要があります。
ただし、これを行うと、次に Visual Studio 内からワークフローをデプロイしようとすると、「ファイルが署名されていない可能性があります」という理由でデプロイできないと不平を言い、新しいバージョンのワークフローをコピーしようとすると、 dll を GAC に追加すると、.dll ファイルがロックされていることがわかります。
場合によっては、iisreset を実行することでこれを回避できることがわかりましたが、Visual Studio を再起動する必要がある場合もあり、コンピューターを完全に再起動しなければならないこともよくありました。プロセスがファイルをロックしました。一方、デバッガーを使用しない場合は、すべて正常に動作します。
これよりもワークフローをデバッグする簡単な方法を知っている人はいますか?