首页 > 代码库 > 【泛型】
【泛型】
C#泛型获取传入的动态类型参数的属性值的问题
dynamic tt = SortObj.GetType().GetProperty(Key).GetValue(SortObj, null);
对C#泛型实例化对像,在使用泛型的类后面加入一个 where T : new(),代码如下:
public class B<T> where T : new() { public static T Get() { T result = new T();//这样就可以实例化。也可以编译通过。 } }
NET 反射技术传递参数实例
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(); }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。