object Var = this.GetType().GetProperty(VarName); if (Var == null) { sb.AppendFormat("<Property {0} not found>", VarName); } else { // Got a valid property name - get its value as a string Var = this.GetType().GetProperty(VarName).GetValue(this, null); sb.AppendFormat("{0}",Var); }>Thanks. I'll check it out in detail. What I need to be able to do, is reproduce a sophisticated query builder that has lots of flexiblity. For example, retrieve records from a table where we have in a variable the record_id currently displayed. It gets tricky.
>> public bool PemStatus(object o, string name, string PEM) >> { >> switch (PEM.ToUpper()) >> { >> case "P": >> System.Reflection.PropertyInfo pi = o.GetType().GetProperty(name); >> if (pi == null) >> return false; >> else >> return true; >> case "E": >> System.Reflection.EventInfo ei = o.GetType().GetEvent(name); >> if (ei == null) >> return false; >> else >> return true; >> case "M": >> System.Reflection.MethodInfo mi = o.GetType().GetMethod(name); >> if (mi == null) >> return false; >> else >> return true; >> default: >> return false; >> } >> } >> >>>>
>>>>StringBuilder sb = new StringBuilder(); >>>>sb.Append("SELECT *"); >>>>sb.AppendFormat(" FROM {0}",YourTableName); >>>>sb.AppendFormat(" WHERE cName LIKE '{0}%'", WorkGroup); >>>>sb.AppendFormat(" AND dIntervalStart >= '{0}' AND dIntervalStart < '{1}'", StartDate, EndDate); >>>>sb.Append(" GROUP BY cName"); >>>>string sql = sb.ToString(); >>>> >>>>SqlConnection cn = new SqlConnection(SqlDataSource); >>>>SqlCommand cm = new SqlCommand(sql, cn); >>>>