internal IList<domain.sm.User> toTriageGroupMembers(IDataReader rdr)
{
IList<domain.sm.User> users = new List<domain.sm.User>();
while (rdr.Read())
{
domain.sm.User user = new domain.sm.User();
user.Id = Convert.ToInt32(rdr.GetDecimal(rdr.GetOrdinal("USER_ID")));
if (!rdr.IsDBNull(rdr.GetOrdinal("EMAIL_ADDRESS")))
{
user.Email = rdr.GetString(rdr.GetOrdinal("EMAIL_ADDRESS"));
}
user.Oplock = Convert.ToInt32(rdr.GetDecimal(rdr.GetOrdinal("OPLOCK")));
int emailNoticeCode = Convert.ToInt32(rdr.GetDecimal(rdr.GetOrdinal("EMAIL_NOTIFICATION")));
if (Enum.IsDefined(typeof(domain.sm.enums.EmailNotificationEnum), emailNoticeCode))
{
user.EmailNotification = (domain.sm.enums.EmailNotificationEnum)emailNoticeCode;
}
if (!rdr.IsDBNull(rdr.GetOrdinal("LAST_EMAIL_NOTIFICATION")))
{
user.LastNotification = rdr.GetDateTime(rdr.GetOrdinal("LAST_EMAIL_NOTIFICATION"));
}
users.Add(user);
}
if (users.Count <= 0)
{
throw new MdoException("That triage group does not appear to have any members!");
}
return users;
}