В любом случае в C# для вызова метода на основе Enum и/или класса? Скажем, если бы я должен был назватьC# - Silverlight - Динамический вызов метода
Controller<Actions.OnEdit, Customer>(customer);
Могу ли я сделать что-то вроде этого тогда?
public void Controller<TAction, TParam>(TParam object)
{
Action<TParam> action = FindLocalMethodName(TAction);
action(object);
}
private Action<T> FindLocalMethodName(Enum method)
{
//Use reflection to find a metode with
//the name corresponding to method.ToString()
//which accepts a parameters type T.
}
Это нормально для того, чтобы метод был общедоступным, я просто не хочу загромождать свою модель просмотра, тем меньше строк кода я пишу, тем меньше ошибок я бы сделал, тем быстрее я могу все исправить правильно? – cmaduro
Полностью согласен. Я использовал эту технику, чтобы вывести ICommands из моего ViewModel без беспорядка свойств команд. Я просто искал CommandAttribute в методе и вставил делегаткоманд в словарь команд. – Josh