我正在研究一种使用反射调用类方法并从spring获取我的服务对象类的方法。像这样的东西:
private void InvokeMethod(string serviceName, string methodName, params object[] arguments)
{
object service = SpringContextManager.Instance.GetObject(serviceName);
Type classType = service.GetType();
MethodInfo method = classType.GetMethod(methodName);
method.Invoke(service, arguments);
}
//...
InvokeMethod(SpringObjectsConstants.LogDocumentService, "SetDocumentStatus", 9127, LogDocumentPendingStatusEnum.Finalized)
我需要将方法名称通知为字符串,以便方法可以调用它,但我不想使用字符串,因为如果方法名称发生更改,我将无法跟踪它的用法。有什么方法可以使用看起来像枚举之类的接口方法吗?任何可能导致编译错误或我可以更新重命名 Visual Studio 中的方法名称?