分类:
MVC
//类
public class Method
{
public string Father { get; set; }
public string Chlidname { get; set; }
public int? count { get; set; }
public decimal? sum { get; set; }
public decimal? max { get; set; }
public double? min { get; set; }
public double? Avg { get; set; }
public void Hello()
{
Console.WriteLine("Hello------");
}
public void SayHello(string aa)
{
Console.WriteLine("Hello------"+aa);
}
private void SayHellod(string aa,int bb)
{
Console.WriteLine("Hello------" + aa);
}
public void SayHellodT<T>()
{
Console.WriteLine("Hello------" );
}
}
static void Main(string[] args)
{
//使用反射可以根据字符串类型(类全名,类库名)
//反射可以访问属性,而且可以访问私有属性,可以给私有属性赋值
//反射可以访问字段,而且可以访问私有字段,可以给私有字段赋值
//反射可以调用方法,而且可以调用私有方法
Method method = new Method();
//反射可以拿到属性
//1拿到总属性
var ytpe= method.GetType();
//2拿到该对象里面的属性
var ytpeinto = method.GetType().GetProperty("sum").PropertyType;
var x = typeof(Method).GetProperty("sum").PropertyType;
Console.WriteLine(ytpe +"-----" +ytpeinto);
//3调用duix里面的方法
//1用实例的对象来调用
method.GetType().GetMethod("Hello").Invoke(method, null);//Invoke(对象名,参数(调用的东西为空就写null))
//2用对象名调用
typeof(Method).GetMethod("Hello").Invoke(method, null);
//3调用有参数的值
typeof(Method).GetMethod("SayHello").Invoke(method, new object[] { "354346" });
//4调用对象里面的私有
typeof(Method).GetMethod("SayHellod", BindingFlags.NonPublic | BindingFlags.Instance).Invoke(method, new object[]{"5463",66});
//5调用泛型类方法
var typed = method.GetType().GetProperty("Avg").PropertyType;
var TT = typeof(Method).GetMethod("SayHellodT");
TT = TT.MakeGenericMethod(typed);
TT.Invoke(method, null);
}
}评价
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:
50010702506256
50010702506256
欢迎加群交流技术