首页 > 其他 > 详细

【泛型】

时间:2014-05-30 05:31:42      阅读:337      评论:0      收藏:0      [点我收藏+]

C#泛型获取传入的动态类型参数的属性值的问题

dynamic tt = SortObj.GetType().GetProperty(Key).GetValue(SortObj, null);

对C#泛型实例化对像,在使用泛型的类后面加入一个 where T : new(),代码如下:

bubuko.com,布布扣
public class B<T> where T : new()
{
  public static T Get()
     {
         T result = new T();//这样就可以实例化。也可以编译通过。
      }
}
bubuko.com,布布扣

 NET 反射技术传递参数实例

 

bubuko.com,布布扣
static void Main(string[] args)
        {
            //此处用反射调用DLL文件,路径是我硬盘的路径
            Assembly a = Assembly.LoadFrom("D:\\工作文件\\Code\\Code\\Function\\bin\\Debug\\Code.Function.dll");
            Type[] tList = a.GetTypes();//获取该DLL程序集中定义的类或类型
            if (tList != null)//如果不为空
            {
                foreach (Type tItem in tList)//遍历每一个类或类型
                {
                    //获取类中的方法
                    MethodInfo[] methods = tItem.GetMethods(BindingFlags.InvokeMethod | BindingFlags.Instance | BindingFlags.Public);
                    //在类中查找方法名为“Show”的方法。
                    MethodInfo mShow = findMethod(methods, "Show");

                    if (mShow != null)
                    {
                        //创建该类的实例
                        object instance = Activator.CreateInstance(tItem);
                        object[] parameters = new object[1];//定义参数类型
                        parameters[0] = (object)"aaa";//设置Show方法的参数值
                        Console.WriteLine(mShow.Invoke(instance, parameters));//打印Show方法的输出结果
                    }
                }
            }
            Console.ReadLine();
        }
bubuko.com,布布扣

 

 

【泛型】,布布扣,bubuko.com

【泛型】

原文:http://www.cnblogs.com/FH-cnblogs/p/3757050.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!