在.net中,有没有办法使用反射来确定方法上的参数是否用"params"关键字标记?
检查是否ParamArrayAttribute
已应用于ParameterInfo
对象:
//use string.Format(str, args) as a test var method = typeof(string).GetMethod("Format", new[] {typeof(string), typeof(object[])}); var param = method.GetParameters()[1]; Console.WriteLine(Attribute.IsDefined(param, typeof(ParamArrayAttribute)));
测试以查看最终的ParameterInfo是否已将ParamArrayAttribute应用于它.