Пример #1
0
        private Employee GetFromDbByName(string name)
        {
            var emp = new Employee();

            emp.Name = name;
            SQLiteCommand command = DBFunctions.GetInstance().GetCommand("Select ID,Name,Phone,Address,RoleId From Employees Where (Name) = (?)");

            command.Parameters.AddWithValue("Name", emp.Name);
            using (SQLiteDataReader reader = DBFunctions.GetInstance().GetReader(command))
            {
                if (reader.Read())
                {
                    emp.Id      = (Int64)reader[0];
                    emp.Name    = reader[1].ToString();
                    emp.Phone   = reader[2].ToString();
                    emp.Address = reader[3].ToString();
                    emp.Role    = RoleCache.GetInstance().GetRoleById((Int64)reader[4]);
                }
                else
                {
                    emp = null;
                }
                reader.Close();
            }
            return(emp);
        }
Пример #2
0
 private EmployeeCache()
 {
     lock (dummy)
     {
         if (Employees == null)
         {
             Employees = new List <Employee>();
         }
         Employees?.Clear();
         Employee emp;
         DBFunctions.GetInstance().OpenConnection();
         using (SQLiteDataReader reader = DBFunctions.GetInstance().GetReader("Select Id, Name, Phone, Address, RoleId from Employees"))
         {
             while (reader.Read())
             {
                 emp         = new Employee();
                 emp.Id      = (Int64)reader[0];
                 emp.Name    = reader[1].ToString();
                 emp.Phone   = reader[2].ToString();
                 emp.Address = reader[3].ToString();
                 emp.Role    = new EmployeeRole {
                     Id = (Int64)reader[4]
                 };
                 Employees.Add(emp);
             }
             reader.Close();
         }
         foreach (var employee in Employees)
         {
             employee.Role = RoleCache.GetInstance().GetRoleById(employee.Role.Id);
         }
     }
 }
Пример #3
0
 public static RoleCache GetInstance()
 {
     if (instance == null)
     {
         instance = new RoleCache();
     }
     return(instance);
 }
Пример #4
0
 public void Clear()
 {
     if (Roles != null)
     {
         Roles.Clear();
     }
     instance = null;
 }