3

私はこのようなことをしようとしています:

    public static class Validate
    {
        public static void AgainstNull(string str)
        {
            if (String.IsNullOrWhiteSpace(str))
            {
                // how do I know the property name in the calling code?
                throw new ArgumentNullException("property name from caller");
            }
        }
    }

私のコードベースでこれに似たパターンを使用できるように:

    public void Foo(string bar)
    {
        Validate.AgainstNull(bar);

        // other processing here
    }

検証メソッド内の呼び出しコードから渡されたプロパティの名前を知るにはどうすればよいですか?

4

4 に答える 4

1

簡単な答え: できません。

新しいバージョンの .NET には役立つと思われる属性がありますが、それらもうまくいくようには見えません。

于 2013-11-12T22:36:06.117 に答える