GameFramework.DataDML.LoadAllTableMailInfo C# (CSharp) Метод

LoadAllTableMailInfo() приватный статический Метод

private static LoadAllTableMailInfo ( int start, int count ) : List
start int
count int
Результат List
        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;
        }