次のように、現在のメソッド呼び出し (戻り値を含む) を Visual Studio 出力に出力したいと考えています。
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
Func<object, object> ret = (value) =>
{
#if DEBUG
var debug = new StringBuilder();
debug.Append("MyConverter.Convert([");
debug.Append(values.Sum(v => (v != null ? v.ToString() : "null") + ',', null, v => v != null ? v.ToString() : "null"));
debug.Append("], " + targetType.ToString() + ", " + parameter.ToString() + ", " + culture.DisplayName + ") =" + value.ToString() + ";");
Debug.WriteLine(debug.ToString());
#endif
return value;
};
// [..]
}
デバッグ中に、これを使用して、より多くの情報を取得します (たとえば、ここに示すコンバーターから)。ただし、それはあくまでも回り道です。
より柔軟にする方法はありますか?GetCurrentArguments (MethodInfo から) のようなものですか?