using System; using System.Collections.Generic; using Oracle.ManagedDataAccess.Client; using System.Linq; using System.Web; namespace ReportWeb.Models { public class SpinLog { public SpinLog() { } public string msisdn { get; set; } public DateTime? insert_time { get; set; } public DateTime? expire_time { get; set; } public DateTime? last_update { get; set; } public int added { get; set; } public int used { get; set; } public string channel_add { get; set; } public static List Parse(OracleDataReader reader) { List result = new List(); try { while (reader.Read()) { SpinLog spinLog = new SpinLog(); for (int i = 0; i < reader.FieldCount; i++) { if (reader.GetName(i).ToUpper() == "MSISDN") { try { spinLog.msisdn = reader.GetValue(i).ToString(); } catch { } } else if (reader.GetName(i).ToUpper() == "INSERT_TIME") try { spinLog.insert_time = reader.GetDateTime(i); } catch { } else if (reader.GetName(i).ToUpper() == "EXPIRE_TIME") try { spinLog.expire_time = reader.GetDateTime(i); } catch { } else if (reader.GetName(i).ToUpper() == "LAST_UPDATE") try { spinLog.last_update = reader.GetDateTime(i); } catch { } else if (reader.GetName(i).ToUpper() == "ADDED") { try { spinLog.added = int.Parse(reader.GetValue(i).ToString()); } catch { } } else if (reader.GetName(i).ToUpper() == "USED") { try { spinLog.used = int.Parse(reader.GetValue(i).ToString()); } catch { } } else if (reader.GetName(i).ToUpper() == "CHANNEL_ADD") { try { spinLog.channel_add = reader.GetValue(i).ToString(); } catch { } } } result.Add(spinLog); } reader.Close(); } catch { } finally { try { reader.Close(); } catch { } } return result; } } }