Esempio n. 1
0
        public void Can_add_corso()
        {
            HibernateHelper.Init();

            Corso c1 = new Corso {
                Codice = "Cod1", Descrizione = "Corso Figo"
            };

            using (ISession session = HibernateHelper.Open())
                using (ITransaction transaction = session.BeginTransaction())
                {
                    session.Save(c1);
                    transaction.Commit();
                }
        }
Esempio n. 2
0
        public IEnumerable <User> GetAllUsers()
        {
            IList <User> list;

            using (var session = HibernateHelper.GetCurrentSession())
            {
                using (ITransaction transaction = session.BeginTransaction())
                {
                    ICriteria criteria = session.CreateCriteria <User>();
                    list = criteria.List <User>();
                    transaction.Commit();
                }
            }
            return(list);
        }
Esempio n. 3
0
        public void Can_add_stagione()
        {
            HibernateHelper.Init();

            Stagione c1 = new Stagione {
                Corrente = false, Descrizione = "ci sarà sicuro il sole"
            };

            using (ISession session = HibernateHelper.Open())
                using (ITransaction transaction = session.BeginTransaction())
                {
                    session.Save(c1);
                    transaction.Commit();
                }
        }
Esempio n. 4
0
 // GET: api/Books
 public IList <Book> GetBooks()
 {
     try
     {
         using (ISession session = HibernateHelper.OpenSession())
         {
             var queryResult = session.QueryOver <Book>().List();
             return(queryResult);
         }
     }
     catch (Exception ex)
     {
         throw;
     }
 }
Esempio n. 5
0
        public void Can_add_persona()
        {
            HibernateHelper.Init();

            Persona p1 = new Persona {
                Nome = "Qualcuno", DataNascita = new DateTime(1981, 12, 12), Male = true
            };

            using (ISession session = HibernateHelper.Open())
                using (ITransaction transaction = session.BeginTransaction())
                {
                    session.Save(p1);
                    transaction.Commit();
                }
        }
Esempio n. 6
0
        /// <summary>
        /// 查询部门数量
        /// </summary>
        /// <param name="departmentSearcher">部门查询对象</param>
        /// <param name="tran">事务对象</param>
        /// <returns>返回查询到的数量</returns>
        public long Count(DepartmentSearcher departmentSearcher, ICTransaction tran)
        {
            DepartmentSearcher   querySearcher = null;
            HibernateTransaction hTran         = null;
            ISession             session       = null;
            HQLQueryParser       queryParser   = new HQLQueryParser();
            StringBuilder        query         = new StringBuilder();

            query.Append("SELECT ");
            query.Append("  COUNT(*) ");
            query.Append("FROM ");
            query.Append("  Department D ");

            if (departmentSearcher != null)
            {
                querySearcher           = (DepartmentSearcher)departmentSearcher.Clone();
                querySearcher.TableName = "D";

                if (querySearcher.CurrCompany != null)
                {
                    querySearcher.CurrCompany.TableName = "C";
                    query.Append("LEFT JOIN ");
                    query.Append("  D.CurrCompany C ");
                }
            }

            queryParser.SearcherParse(querySearcher);

            if (!string.IsNullOrEmpty(queryParser.ConditionString))
            {
                query.Append("WHERE ");
                query.Append("  " + queryParser.ConditionString);
            }

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
            }

            long count = HibernateHelper.FindUniqueObjectByHQL <long>(session, query.ToString(), queryParser.ParamCollection);

            return(count);
        }
Esempio n. 7
0
        public static IList <Product> listOfAllProduct()
        {
            IList <Product> products;
            ISession        session     = HibernateHelper.GetSessionFactory().OpenSession();
            ITransaction    transaction = session.BeginTransaction();

            try
            {
                products = session.CreateCriteria <Product>().List <Product>();
            }
            finally
            {
                session.Close();
            }
            return(products);
        }
Esempio n. 8
0
        public static IList <User> listOfAllUser()
        {
            IList <User> users;
            ISession     session     = HibernateHelper.GetSessionFactory().OpenSession();
            ITransaction transaction = session.BeginTransaction();

            try
            {
                users = session.CreateCriteria <User>().List <User>();
            }
            finally
            {
                session.Close();
            }
            return(users);
        }
Esempio n. 9
0
        /// <summary>
        /// 查找指定ID的部门
        /// </summary>
        /// <param name="departmentId">部门ID</param>
        /// <param name="tran">中间事务对象</param>
        /// <returns>返回部门实体对象</returns>
        public Department FindSingle(string departmentId, ICTransaction tran)
        {
            HibernateTransaction hTran   = null;
            ISession             session = null;

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
            }

            return(HibernateHelper.FindObjectById <Department>(session, departmentId));
        }
Esempio n. 10
0
        public static Sale createSale(Sale sale)
        {
            ISession     session     = HibernateHelper.GetSessionFactory().OpenSession();
            ITransaction transaction = session.BeginTransaction();

            try
            {
                session.SaveOrUpdate(sale);
                transaction.Commit();
            }
            finally
            {
                session.Close();
            }

            return(sale);
        }
Esempio n. 11
0
        public static User logIn(String username, String password)
        {
            User         user;
            ISession     session     = HibernateHelper.GetSessionFactory().OpenSession();
            ITransaction transaction = session.BeginTransaction();

            user = (User)session.CreateQuery("From User u where u.Username = :username and u.Password = :password").SetParameter("username", username).SetParameter("password", password).UniqueResult();

            if (user != null)
            {
                Console.WriteLine("Password Match " + user.Password);
                return(user);
            }

            user = null;
            return(user);
        }
Esempio n. 12
0
        public static Company updateCompany(Company model)
        {
            ISession     session     = HibernateHelper.GetSessionFactory().OpenSession();
            ITransaction transaction = session.BeginTransaction();

            try
            {
                session.Update(model);
                transaction.Commit();
            }
            finally
            {
                session.Close();
            }

            return(model);
        }
Esempio n. 13
0
        public static User deleteUser(User user)
        {
            ISession     session     = HibernateHelper.GetSessionFactory().OpenSession();
            ITransaction transaction = session.BeginTransaction();

            try
            {
                session.Delete(user);
                transaction.Commit();
            }
            finally
            {
                session.Close();
            }

            return(user);
        }
Esempio n. 14
0
        public static IList <Company> listOfAllCompany()
        {
            IList <Company> model;
            ISession        session     = HibernateHelper.GetSessionFactory().OpenSession();
            ITransaction    transaction = session.BeginTransaction();

            try
            {
                model = session.CreateCriteria <Company>().List <Company>();
            }
            finally
            {
                session.Close();
            }

            return(model);
        }
Esempio n. 15
0
        public static Product deleteProduct(Product product)
        {
            ISession     session     = HibernateHelper.GetSessionFactory().OpenSession();
            ITransaction transaction = session.BeginTransaction();

            try
            {
                session.Delete(product);
                transaction.Commit();
            }
            finally
            {
                session.Close();
            }

            return(product);
        }
Esempio n. 16
0
        /// <summary>
        /// 查找指定ID的员工
        /// </summary>
        /// <param name="employeeId">员工ID</param>
        /// <param name="tran">中间事务对象</param>
        /// <returns>返回员工实体对象</returns>
        public Employee FindSingle(string employeeId, ICTransaction tran)
        {
            HibernateTransaction hTran   = null;
            ISession             session = null;

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
            }

            return(HibernateHelper.FindObjectById <Employee>(session, employeeId));
        }
Esempio n. 17
0
        /// <summary>
        /// 更新员工数据
        /// </summary>
        /// <param name="employeeList">员工实体对象</param>
        /// <param name="tran">中间事务对象</param>
        public void Update(IList <Employee> employeeList, ICTransaction tran)
        {
            HibernateTransaction hTran   = null;
            ISession             session = null;
            ITransaction         ihTran  = null;

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
                ihTran  = session.BeginTransaction();
            }

            try
            {
                if (employeeList != null)
                {
                    foreach (Employee employee in employeeList)
                    {
                        HibernateHelper.UpdateObject <Employee>(session, employee);
                    }

                    if (ihTran != null)
                    {
                        ihTran.Commit();
                    }
                }

                HibernateHelper.FlushSession(session);
            }
            catch (Exception ex)
            {
                if (ihTran != null)
                {
                    ihTran.Rollback();
                }

                throw new Exception(ex.Message, ex);
            }
        }
Esempio n. 18
0
        /// <summary>
        /// 删除公司
        /// </summary>
        /// <param name="companyId">公司ID</param>
        /// <param name="tran">中间事务对象</param>
        public void Delete(string companyId, ICTransaction tran)
        {
            HibernateTransaction hTran   = null;
            ISession             session = null;

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
            }

            Company company = HibernateHelper.FindObjectById <Company>(session, companyId);

            HibernateHelper.DeleteObject <Company>(session, company);
        }
Esempio n. 19
0
        /// <summary>
        /// 删除职位
        /// </summary>
        /// <param name="positionId">职位ID</param>
        /// <param name="tran">中间事务对象</param>
        public void Delete(string positionId, ICTransaction tran)
        {
            HibernateTransaction hTran   = null;
            ISession             session = null;

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
            }

            Position position = HibernateHelper.FindObjectById <Position>(session, positionId);

            HibernateHelper.DeleteObject <Position>(session, position);
        }
Esempio n. 20
0
        /// <summary>
        /// 删除部门
        /// </summary>
        /// <param name="departmentId">部门ID</param>
        /// <param name="tran">中间事务对象</param>
        public void Delete(string departmentId, ICTransaction tran)
        {
            HibernateTransaction hTran   = null;
            ISession             session = null;

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
            }

            Department department = HibernateHelper.FindObjectById <Department>(session, departmentId);

            HibernateHelper.DeleteObject <Department>(session, department);
        }
Esempio n. 21
0
        /// <summary>
        /// 删除员工
        /// </summary>
        /// <param name="employeeId">员工ID</param>
        /// <param name="tran">中间事务对象</param>
        public void Delete(string employeeId, ICTransaction tran)
        {
            HibernateTransaction hTran   = null;
            ISession             session = null;

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
            }

            Employee employee = HibernateHelper.FindObjectById <Employee>(session, employeeId);

            HibernateHelper.DeleteObject <Employee>(session, employee);
        }
Esempio n. 22
0
        public IHttpActionResult DeleteBook(int id)
        {
            using (ISession session = HibernateHelper.OpenSession())
            {
                var book = session.QueryOver <Book>().Where(x => x.Id == id).SingleOrDefault();

                if (book == null)
                {
                    return(NotFound());
                }

                using (ITransaction transaction = session.BeginTransaction())
                {
                    session.Delete(book);
                    transaction.Commit();
                }

                return(Ok(book));
            }
        }
Esempio n. 23
0
 public IHttpActionResult PutBook(int id, Book book)
 {
     try
     {
         if (ModelState.IsValid)
         {
             using (ISession session = HibernateHelper.OpenSession())
             {
                 using (ITransaction transaction = session.BeginTransaction())
                 {
                     session.Update(book);
                     transaction.Commit();
                 }
             }
             return(StatusCode(HttpStatusCode.NoContent));
         }
         return(BadRequest(ModelState));
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 24
0
        /// <summary>
        /// 根据指定条件删除公司
        /// </summary>
        /// <param name="companySearcher">公司查询对象</param>
        /// <param name="tran">中间事务对象</param>
        public void Delete(CompanySearcher companySearcher, ICTransaction tran)
        {
            CompanySearcher      querySearcher = null;
            HibernateTransaction hTran         = null;
            ISession             session       = null;
            HQLQueryParser       queryParser   = new HQLQueryParser();
            StringBuilder        query         = new StringBuilder();

            query.AppendLine("DELETE FROM ");
            query.AppendLine("   Company C ");

            if (companySearcher != null)
            {
                querySearcher           = (CompanySearcher)companySearcher.Clone();
                querySearcher.TableName = "C";
            }

            queryParser.SearcherParse(querySearcher);

            if (!string.IsNullOrEmpty(queryParser.ConditionString))
            {
                query.AppendLine("WHERE ");
                query.AppendLine("   " + queryParser.ConditionString);
            }

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
            }

            int effectCount = HibernateHelper.DeleteObjectByHQL(session, query.ToString(), queryParser.ParamCollection);
        }
Esempio n. 25
0
        /// <summary>
        /// 批量新建员工
        /// </summary>
        /// <param name="employeeList">员工实体对象集合</param>
        /// <param name="tran">中间事务对象</param>
        /// <returns>返回处理后的员工实体对象集合</returns>
        public IList <Employee> Add(IList <Employee> employeeList, ICTransaction tran)
        {
            IList <Employee>     newEmployeeList = new List <Employee>();
            HibernateTransaction hTran           = null;
            ISession             session         = null;
            ITransaction         ihTran          = null;

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
                ihTran  = session.BeginTransaction();
            }

            try
            {
                bool isPass = true;

                if (employeeList != null)
                {
                    Employee newEmployee = null;

                    foreach (Employee employee in employeeList)
                    {
                        newEmployee = HibernateHelper.AddObject <Employee>(session, employee);
                        newEmployeeList.Add(newEmployee);

                        if (string.IsNullOrEmpty(newEmployee.EmployeeId) && isPass)
                        {
                            isPass = false;
                        }
                    }
                }

                if (ihTran != null)
                {
                    if (isPass)
                    {
                        ihTran.Commit();
                    }
                    else
                    {
                        ihTran.Rollback();
                    }

                    HibernateHelper.FlushSession(session);
                }
            }
            catch (Exception ex)
            {
                if (ihTran != null)
                {
                    ihTran.Rollback();
                    HibernateHelper.FlushSession(session);
                }

                throw new Exception(ex.Message, ex);
            }

            return(newEmployeeList);
        }
Esempio n. 26
0
        /// <summary>
        /// 查找指定条件的员工分页集合
        /// </summary>
        /// <param name="employeeSearcher">员工查询对象</param>
        /// <param name="pager">分页对象</param>
        /// <param name="tran">中间事务对象</param>
        /// <returns>返回查找到的分页集合,包括按条件可查询到的所有记录数和当前分页的对象集合</returns>
        public PageList <Employee> FindList(EmployeeSearcher employeeSearcher, Pager pager, ICTransaction tran)
        {
            EmployeeSearcher     querySearcher = null;
            HibernateTransaction hTran         = null;
            ISession             session       = null;
            PageList <Employee>  pList         = new PageList <Employee>();
            HQLQueryParser       queryParser   = new HQLQueryParser();
            StringBuilder        query         = new StringBuilder();

            query.Append("SELECT ");
            query.Append(" E ");
            query.Append("FROM ");
            query.Append("  Employee E ");

            if (employeeSearcher != null)
            {
                querySearcher           = (EmployeeSearcher)employeeSearcher.Clone();
                querySearcher.TableName = "E";

                if (querySearcher.CurrCompany != null)
                {
                    querySearcher.CurrCompany.TableName = "C";
                    query.Append("LEFT JOIN ");
                    query.Append("  E.CurrCompany C ");
                }

                if (querySearcher.CurrDepartment != null)
                {
                    querySearcher.CurrDepartment.TableName = "D";
                    query.Append("LEFT JOIN ");
                    query.Append("  E.CurrDepartment D ");
                }

                if (querySearcher.CurrPosition != null)
                {
                    querySearcher.CurrPosition.TableName = "P";
                    query.Append("LEFT JOIN ");
                    query.Append("  E.CurrPosition P ");
                }
            }

            queryParser.SearcherParse(querySearcher);

            if (!string.IsNullOrEmpty(queryParser.ConditionString))
            {
                query.Append("WHERE ");
                query.Append("  " + queryParser.ConditionString);
            }

            if (!string.IsNullOrEmpty(queryParser.SortString))
            {
                query.Append("ORDER BY ");
                query.Append("  " + queryParser.SortString);
            }

            if (tran != null)
            {
                hTran            = (HibernateTransaction)tran;
                session          = hTran.CurrentSession;
                pList.TotalCount = this.Count(querySearcher, tran);
            }
            else
            {
                session          = this.CurrentHibernateConfig.GetCurrentSession();
                pList.TotalCount = this.Count(querySearcher);
            }

            if (pager != null)
            {
                pList.RecordList = HibernateHelper.FindObjectListByHQL <Employee>(session, query.ToString(), queryParser.ParamCollection, pager);
            }
            else
            {
                pList.RecordList = HibernateHelper.FindObjectListByHQL <Employee>(session, query.ToString(), queryParser.ParamCollection);
            }

            return(pList);
        }
Esempio n. 27
0
        /// <summary>
        /// 根据指定条件删除员工
        /// </summary>
        /// <param name="employeeSearcher">员工查询对象</param>
        /// <param name="tran">中间事务对象</param>
        public void Delete(EmployeeSearcher employeeSearcher, ICTransaction tran)
        {
            EmployeeSearcher     querySearcher = null;
            HibernateTransaction hTran         = null;
            ISession             session       = null;
            HQLQueryParser       queryParser   = new HQLQueryParser();
            StringBuilder        query         = new StringBuilder();

            query.Append("DELETE FROM ");
            query.Append("  Employee  ");
            query.Append("WHERE ");
            query.Append("  EmployeeId IN (");
            query.Append("    SELECT ");
            query.Append("      E.EmployeeId ");
            query.Append("    FROM ");
            query.Append("      Employee E ");

            if (employeeSearcher != null)
            {
                querySearcher           = (EmployeeSearcher)employeeSearcher.Clone();
                querySearcher.TableName = "E";

                if (querySearcher.CurrCompany != null)
                {
                    querySearcher.CurrCompany.TableName = "C";
                    query.Append("LEFT JOIN ");
                    query.Append("  E.CurrCompany C ");
                }

                if (querySearcher.CurrDepartment != null)
                {
                    querySearcher.CurrDepartment.TableName = "D";
                    query.Append("LEFT JOIN ");
                    query.Append("  E.CurrDepartment D ");
                }

                if (querySearcher.CurrPosition != null)
                {
                    querySearcher.CurrPosition.TableName = "P";
                    query.Append("LEFT JOIN ");
                    query.Append("  E.CurrPosition P ");
                }
            }

            queryParser.SearcherParse(querySearcher);

            if (!string.IsNullOrEmpty(queryParser.ConditionString))
            {
                query.Append("WHERE ");
                query.Append("  " + queryParser.ConditionString);
            }

            query.Append(")");

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
            }

            int effectCount = HibernateHelper.DeleteObjectByHQL(session, query.ToString(), queryParser.ParamCollection);
        }
Esempio n. 28
0
        /// <summary>
        /// 批量新建部门
        /// </summary>
        /// <param name="departmentList">部门实体对象集合</param>
        /// <param name="tran">事务对象</param>
        /// <returns>返回处理后的部门实体对象集合</returns>
        public IList <Department> Add(IList <Department> departmentList, ICTransaction tran)
        {
            IList <Department>   newDepartmentList = new List <Department>();
            HibernateTransaction hTran             = null;
            ISession             session           = null;
            ITransaction         ihTran            = null;

            if (tran != null)
            {
                hTran   = (HibernateTransaction)tran;
                session = hTran.CurrentSession;
            }
            else
            {
                session = this.CurrentHibernateConfig.GetCurrentSession();
                ihTran  = session.BeginTransaction();
            }

            try
            {
                bool isPass = true;

                if (departmentList != null)
                {
                    Department newDepartment = null;

                    foreach (Department department in departmentList)
                    {
                        newDepartment = HibernateHelper.AddObject <Department>(session, department);
                        newDepartmentList.Add(newDepartment);

                        if (string.IsNullOrEmpty(newDepartment.DepartmentId) && isPass)
                        {
                            isPass = false;
                        }
                    }
                }

                if (ihTran != null)
                {
                    if (isPass)
                    {
                        ihTran.Commit();
                    }
                    else
                    {
                        ihTran.Rollback();
                    }

                    HibernateHelper.FlushSession(session);
                }
            }
            catch (Exception ex)
            {
                if (ihTran != null)
                {
                    ihTran.Rollback();
                    HibernateHelper.FlushSession(session);
                }

                throw new Exception(ex.Message, ex);
            }

            return(newDepartmentList);
        }
Esempio n. 29
0
 public void Can_generate_schema()
 {
     HibernateHelper.Init();
 }