using System; using System.Collections.Generic; using System.Text; using Tanshu.Accounts.Contracts; using System.Data.SqlClient; using Tanshu.Data.DAO; using Tanshu.Accounts.Entities; using Tanshu.Accounts.SqlDAO; using NHibernate.Criterion; using NHibernate; namespace Tanshu.Accounts.Repository { public class ProductGroupBI { public ProductGroup GetProductGroup(int productGroupID) { using (var session = SessionManager.Session) { return session.Get(productGroupID); } } public ProductGroup GetProductGroupByName(string name) { using (var session = SessionManager.Session) { return session.CreateCriteria() .Add(Restrictions.Eq("Name", name)) .UniqueResult(); } } public void Insert(ProductGroup productGroup) { using (var session = SessionManager.Session) { session.Save(productGroup); } } public void Update(ProductGroup productGroup) { using (var session = SessionManager.Session) { session.Update(productGroup); } } public IList GetProductGroups() { using (var session = SessionManager.Session) { return session.CreateCriteria() .List(); } } public ProductGroup GetProductGroupOfProduct(int productID) { using (var session = SessionManager.Session) { var item = (from p in session.QueryOver() where p.ProductID == productID select p.ProductGroup).SingleOrDefault(); NHibernateUtil.Initialize(item); return item; } } } }