我正在尝试做这样的事情:
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
}
我如何知道从我的 validate 方法中的调用代码传入的属性的名称?