コードをステップ実行しているときに、DebuggerStepThrough 属性を無視している特定の行を深く見つけています。linq ステートメント内のようです。
同様の SO を次に示します。DebuggerStepThrough は無視されます
ステップ実行中のコードはデバッグ モードです。以下の ReflectionHelper メソッドと同じソリューションです。プロジェクトの参照はプロジェクト経由であり、他の場所のコンパイル dll ではありません。つまり、プロジェクトと同じ出力 bin/debug フォルダーです。両方のプロジェクト側でコードを変更しているときに気付くように、使用されているアセンブリが別のものであることを示唆する異常は他に何も起こっていません。
を使用しF11てステップ実行していると、次のコードにステップ インします。
私は私の中に次のものを持っていますpublic static class ReflectionHelper
[DebuggerStepThrough]
public static bool Exists(string propertyName, object srcObject)
{
PropertyInfo propInfoSrcObj = srcObject.GetType().GetProperties()
.FirstOrDefault(p => p.Name == propertyName); //-- Debugger stops here
return (propInfoSrcObj != null);
}
このコードのステップスルーを回避するにはどうすればよいですか? 私の現在の回避策は、 SHIFT+F11でデバッグを再開する前にステップアウトすることF11です。
これが起こっている別の例は、次のコードです。
string databaseNamePair = split.Find(f => f.StartsWith("Initial Catalog"));