Revision: 29286
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at July 25, 2010 17:03 by darkbaron1912
Initial Code
private static object Convert2DataContract2(object objDataTypeIn, string strTableName) { //@ Äổi từ M_AEM -> M_AemManager string strDataContractManager = strTableName.Substring(0, 3) + strTableName.Substring(3).ToLower() + "Manager."; //@ Äổi từ M_AEM -> M_AemDataContract string strDataContract = strTableName.Substring(0, 3) + strTableName.Substring(3).ToLower() + "DataContract"; //@ Äổi từ M_AEM -> M_AemDataContract2 string strDataContract2 = strTableName.Substring(0, 3) + strTableName.Substring(3).ToLower() + "DataContract2"; //@ load Assembly chứa DataContract Assembly objAssemblyDataConntract = System.Reflection.Assembly.Load(ASEEMBLY_DATACONTRACT); //@ load Assembly chứa DataContract2 Assembly objAssemblyDataConntract2 = System.Reflection.Assembly.Load(ASEEMBLY_DATACONTRACT2); //@ lấy kiểu tÆ°Æ¡ng ứng của M_AemDataContract Type objTypeIn = objAssemblyDataConntract.GetType(DATACONTRACT_NAMESPACE + strDataContractManager + strDataContract); //@ lấy kiểu tÆ°Æ¡ng ứng của M_AemDataContract Type objTypeOut = objAssemblyDataConntract2.GetType(DATACONTRACT_NAMESPACE2 + strDataContract2); object objReturnTypeOut = Activator.CreateInstance(objTypeOut); //@ lấy tất cả thuá»™c tÃnh của Data Contract PropertyInfo[] objListPropertyInfo = objTypeIn.GetProperties(); foreach (PropertyInfo objPropertyInfoIn in objListPropertyInfo) { //@@ Lấy giá trị tÆ°Æ¡ng ứng của thuá»™c tÃnh Data Contract object objProperty = objPropertyInfoIn.GetValue(objDataTypeIn, null); //@@ Lấy thuá»™c tÃnh tÆ°Æ¡ng ứng của Data Contract2 PropertyInfo objPropertyInfoOut = objTypeOut.GetProperty(objPropertyInfoIn.Name, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance); //@@ Gán giá trị sang kết quả trả vá» objPropertyInfoOut.SetValue(objReturnTypeOut, objProperty, null); } //@ set thêm thuá»™c tÃnh TableName cho kết quả trả vá» PropertyInfo objPropertyTableName = objTypeOut.GetProperty("TableName", BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance); objPropertyTableName.SetValue(objReturnTypeOut, strTableName, null); return objReturnTypeOut; }
Initial URL
Initial Description
openpacs
Initial Title
Reflection convert all propperties
Initial Tags
Initial Language
C#