private T createObj<T>()
{
Type t = typeof(T);
PropertyInfo[] propertys = t.GetProperties();
object entity = t.Assembly.CreateInstance(t.FullName);
foreach (PropertyInfo pi in propertys)
{
if (!pi.CanWrite) continue;
switch (pi.PropertyType.ToString())
{
case "System.String": pi.SetValue(entity, "", null); break;
case "System.Int32": pi.SetValue(entity, 0, null); break;
case "System.Decimal": pi.SetValue(entity, Convert.ToDecimal(0), null); break;
default: break;
}
}
return (T)entity;
}
Model dddd = createObj<Model>();
var dee = System.Activator.CreateInstance<T>();