リストを使用して、サードパーティのライブラリを使用して取得したすべてのデバイスを保存していました。Exist メソッドを使用して、リスト内にデバイスが存在するかどうかを判断しています。
bool bDeviceFound = _devicesFound.Exists(delegate(RCDevice device)
{
bool retVal = false;
if (device != null)
{
Regex regex = new Regex(@"Floor[\d]+\/mycamera[\d]+");
if (regex.IsMatch(device.FullName))
retVal = true;
}
return retVal;
});
問題は、デリゲートが true を返さないか、実行がデリゲート内のコードに到達しないことです。私はここで何か悪いことをしていますか? デリゲート内のコードを確認しました。正規表現は、一致が見つかるたびに true を返します。
device.FullName は IsMatch に値 "Floor1/mycamera1" を想定して true を返します。
以下のコメントの 1 つで LasseV.Karlsen が示唆したように、デリゲート メソッドを別のプライベートな静的ブール メソッドに移動して、そこにブレーク ポイントを配置しようとしました。しかし、実行は決してそこにヒットしませんでした。ありがとう