5

TL;DR: try catch 疑似コード内で実行されるコードをいくつか渡したいと思います。

void ExecuteInTryCatch(BlockOfCode)
{
   try
   {
      execute BlockOfCode with possible return value
   }
   catch (MyException e)
   {
      do something
   }
}

長いバージョン: Web アプリケーションの自動化テストを作成していて、非決定論的な理由で発生する可能性のある特定の例外をキャッチするコードを実行し、最終的に例外をスローする前に特定のタイムアウトでそのコードの実行を再試行したいと考えています。この目的でデリゲートを使用する可能性を検討しましたが、これを達成する方法がかなり混乱しており、ラムダ式を使用したことがなく、さらに混乱しています。

目標は、このコードをさまざまなセレン アクションに再利用できるようにすることです。これは、Ruby ではかなり単純ですが、個人的には C# ではそれほどではありません。

4

3 に答える 3

6
void ExecuteInTryCatch(Action code)
{
   try
   {
       code();
   }
   catch (MyException e)
   {
      do something
   }
}

ExecuteInTryCatch( ()=>{
    // stuff here
});
于 2013-11-06T18:20:05.667 に答える