首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

超难有关问题(对小弟我)

2012-01-31 
超难问题(对我),高手请进怎么把一个实体类中所有的属性读出来,而且把属性的值也读出来?[解决办法]用反射吧

超难问题(对我),高手请进
怎么把一个实体类中所有的属性读出来,而且把属性的值也读出来?

[解决办法]
用反射吧
[解决办法]
利用反射,请参考:string sClass = CCConvert.GetRequsetQueryString( "ClassName ");string sMethodName = "GetReports ";//得到类Type oType = System.Type.GetType( "CallCenter.Report.Class. "+sClass);if(oType == null ){Response.Write( "类: "+sClass + "不存在! ");return;}//实现化object oInst = Activator.CreateInstance(oType);if(oInst ==null){Response.Write( "类: "+sClass + "不存在! ");return;}//得到方法MethodInfo oMethod = oType.GetMethod(sMethodName);if(oMethod ==null){Response.Write( "方法: "+ sMethodName + "不存在! ");return ;}int iParamsCount = oMethod.GetParameters().Length;string sParams = CCConvert.GetRequsetQueryString( "Params ");string[] ary = sParams.Split( ', ');if(ary.Length !=iParamsCount){Response.Write(String.Format( "传入的参数的个数{0}不等于该方法{1}实际的参数个数{2},请检查 ",ary.Length.ToString(),oMethod.Name,iParamsCount.ToString()));return;}//得到属性PropertyInfo Pro = oType.GetProperty( "Title ");this.sTitle = Pro.GetValue(oInst,null).ToString();FieldInfo fldFileName = oType.GetField( "sExcelFileName ");string sHTML = oMethod.Invoke(oInst,BindingFlags.Public,Type.DefaultBinder,ary,null).ToString();string sFileName = fldFileName.GetValue(oInst).ToString();//Response.Write(sFileName);
[解决办法]
UP
[解决办法]
反射
[解决办法]
Class1 class1 = new Class1();
PropertyInfo[] arrayinfo = class1.GetType().GetProperties();
foreach (PropertyInfo info in arrayinfo)
{
object value = info.GetValue(class1, null);
}
[解决办法]
mark

热点排行