Получить имя параметра из вызывающего метода

У меня есть проект с использованием С#.NET 2.0 (нельзя использовать более высокую версию). Я хотел бы получить имя параметров метода в методе, который называется первым. Если я вызываю метод из MyMethodsClass, я хочу получить строку, указывающую, какой параметр недействителен, следуя некоторым условиям, указанным в методе isValid из класса MyCheckClass.

В следующем коде я получаю строку, которая возвращает "Пожалуйста, проверьте параметр 5", если я буду называть myMehtod (5,1,1). Но я хотел бы получить: "Пожалуйста, проверьте параметр".

Как я мог это сделать? Спасибо!

public MyMethodsClass {

    public string myMethod (int a, int b, int c) {

        return MyCheckClass.isValid(a,b,c);
    }

    public string myMethod2 (int d, int e) {
        return MyCheckClass.isValid(d,e);
    }

}


//Other file
public class MyCheckClass {

    public static string isValid (params object[] parameters) {

            StringBuilder result= new StringBuilder();          
            for (int i = 0; i < parameters.Length; i++)
            {
                object p = parameters[i];
                //Some checks...
                if (p == null || p.Equals("") || p != 5)
                {                    
                    result.Append("Please check the " + p + " parameter");
                }
            }
            return result.toString();               
    }
}

Ответ 2

Эти две линии должны выполнить эту работу для вас, возможно, придется адаптироваться, но должны работать ^^

        MethodInfo info = typeof (MyMethodsClass).GetMethod("MethodName");
        string name = info.GetParameters()[indexOfTheFaultyOne].Name;