今天在做一个功能是遇到一个问题,当我在程序运行时,我希望能够在通过指定方法的字符串就能够执行类库中的任何函数.在js中可以使用eval asp中可以使用Execute vb中好象也有eval.
在C#中好象就没有类似的功能(我在网上找了一下有人问这个问题但是似乎没有结果),
于是决定自己实现这个函数...
要给定函数字符串就执行函数,我们马上应该就会想到C#的反射机制,以前写过一篇关于反射修改对象属性的方法
这让我不禁想到了
using System.Reflection;命名空间包含提供加载类型、方法和字段的有组织的视图的类和接口,具有动态创建和调用类型的功能。
找找看果然有一个MethodInfo看到她成功就一半了 剩下就是实现了...
using System.Reflection;
namespace myCommon
{
public class CExecuteMethod
{
/// <summary>
/// 根据字符执行方法
/// </summary>
/// <param name="path">命名空间</param>
/// <param name="className">类名</param>
/// <param name="MethodName">方法名</param>
/// <param name="parameters">参数</param>
/// <returns>返回object类型</returns>
public static object Execute
C#利用反射实现(js)Eval,asp(Execute)功能 动态执行类库中的函数
最新推荐文章于 2022-03-28 10:04:57 发布