private static GeneralRecordData LoadSingleTableMailInfo(List<string> primaryKeys) { GeneralRecordData ret = null; try { using (MySqlCommand cmd = new MySqlCommand()) { cmd.Connection = DBConn.MySqlConn; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "LoadSingleTableMailInfo"; if(primaryKeys.Count != 1) throw new Exception("primary key number don't match !!!"); MySqlParameter inputParam; inputParam = new MySqlParameter("@_Guid", MySqlDbType.UInt64); inputParam.Direction = ParameterDirection.Input; inputParam.Value = (ulong)Convert.ChangeType(primaryKeys[0],typeof(ulong)); cmd.Parameters.Add(inputParam); using (DbDataReader reader = cmd.ExecuteReader()) { if (reader.Read()) { ret = new GeneralRecordData(); object val; TableMailInfo msg = new TableMailInfo(); val = reader["Guid"]; msg.Guid = (ulong)val; ret.PrimaryKeys.Add(val.ToString()); val = reader["Sender"]; msg.Sender = (string)val; val = reader["Receiver"]; msg.Receiver = (long)val; val = reader["SendDate"]; msg.SendDate = (string)val; val = reader["ExpiryDate"]; msg.ExpiryDate = (string)val; val = reader["Title"]; msg.Title = (string)val; val = reader["Text"]; msg.Text = (string)val; val = reader["Money"]; msg.Money = (int)val; val = reader["Gold"]; msg.Gold = (int)val; val = reader["ItemIds"]; msg.ItemIds = (string)val; val = reader["ItemNumbers"]; msg.ItemNumbers = (string)val; val = reader["LevelDemand"]; msg.LevelDemand = (int)val; val = reader["IsRead"]; msg.IsRead = (bool)val; ret.DataVersion = (int)reader["DataVersion"]; ret.Data = DbDataSerializer.Encode(msg); } } } } catch (Exception ex) { DBConn.Close(); throw ex; } return ret; }
private static List<GeneralRecordData> LoadAllTableMailInfo(int start, int count) { List<GeneralRecordData> ret = new List<GeneralRecordData>(); try { using (MySqlCommand cmd = new MySqlCommand()) { cmd.Connection = DBConn.MySqlConn; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "LoadAllTableMailInfo"; MySqlParameter inputParam; inputParam = new MySqlParameter("@_Start", MySqlDbType.Int32); inputParam.Direction = ParameterDirection.Input; inputParam.Value = start; cmd.Parameters.Add(inputParam); inputParam = new MySqlParameter("@_Count", MySqlDbType.Int32); inputParam.Direction = ParameterDirection.Input; inputParam.Value = count; cmd.Parameters.Add(inputParam); using (DbDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { GeneralRecordData record = new GeneralRecordData(); object val; TableMailInfo msg = new TableMailInfo(); val = reader["Guid"]; msg.Guid = (ulong)val; record.PrimaryKeys.Add(val.ToString()); val = reader["Sender"]; msg.Sender = (string)val; val = reader["Receiver"]; msg.Receiver = (long)val; val = reader["SendDate"]; msg.SendDate = (string)val; val = reader["ExpiryDate"]; msg.ExpiryDate = (string)val; val = reader["Title"]; msg.Title = (string)val; val = reader["Text"]; msg.Text = (string)val; val = reader["Money"]; msg.Money = (int)val; val = reader["Gold"]; msg.Gold = (int)val; val = reader["ItemIds"]; msg.ItemIds = (string)val; val = reader["ItemNumbers"]; msg.ItemNumbers = (string)val; val = reader["LevelDemand"]; msg.LevelDemand = (int)val; val = reader["IsRead"]; msg.IsRead = (bool)val; record.DataVersion = (int)reader["DataVersion"]; record.Data = DbDataSerializer.Encode(msg); ret.Add(record); } } } } catch (Exception ex) { DBConn.Close(); throw ex; } return ret; }