private void Execute<T>(T model,string sql, List<EleQuantity> list, bool fos)
{
Type t = model.GetType();
PropertyInfo[] PropertyList = t.GetProperties();
using (MySqlTransaction tar = myCon.BeginTransaction())
{
try
{
MySqlCommand cmd = myCon.CreateCommand();
cmd.Transaction = tar;
cmd.CommandText = sql;
foreach (var item in list)
{
foreach (var prlist in PropertyList)
{
string name = prlist.Name; //这里只是为了调试查看属性值
object value = prlist.GetValue(item, null);
cmd.Parameters.AddRange(new[]
{
new MySqlParameter(name, value)
});
}
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
}
tar.Commit();
if (fos)
{
myCon.Close();
}
}
catch (Exception)
{
tar.Rollback();
myCon.Close();
throw;
}
}
}