public void TestExpandoPorpertyGetter() { var expGetter = new ExpandoPorpertyGetter(); dynamic tester = new ExpandoObject(); tester.ID = "id"; tester.T2 = "t2"; IDictionary<string,object> retDic = expGetter.GetPropertyDic(tester); Assert.AreEqual(retDic.Keys.Count, 2); }
private IDictionary <string, object> GetConDic(FilterObject fo) { var type = fo.Cons.GetType(); Utility.IPropertyGetter pg; if (type.Equals(typeof(ExpandoObject))) { pg = new Utility.ExpandoPorpertyGetter(); } else { pg = new Utility.NormalPorpertyGetter(); } return(pg.GetPropertyDic(fo.Cons)); }
private string GenExpandoUpdateParaString(ExpandoObject obj) { var ret = new StringBuilder(); var i = 1; var pg = new Utility.ExpandoPorpertyGetter(); var paraDic = pg.GetPropertyDic(obj); foreach (var key in paraDic.Keys) { ret.Append(" " + key + "=@" + key + " "); if (i < paraDic.Keys.Count) { ret.Append(" , "); i++; } } return(ret.ToString()); }
private void setProValueToDynPara(DynamicParameters dp, Object o) { Type type = o.GetType(); if (type.Equals(typeof(ExpandoObject))) { var pg = new Utility.ExpandoPorpertyGetter(); var paraDic = pg.GetPropertyDic(o); foreach (var key in paraDic.Keys) { dp.Add("@" + key, paraDic[key]); } } else { IList <PropertyInfo> props = new List <PropertyInfo>(type.GetProperties()); foreach (PropertyInfo prop in props) { object propValue = prop.GetValue(o, null); dp.Add("@" + prop.Name, propValue); } } }