public override IQueryable <TModel> GetAll(ISession currentSession) { global::NHibernate.ISession nativeSession = GetNativeSession(currentSession); nativeSession.Clear(); IQueryable <TModel> queryable = Query(currentSession); return(queryable); }
public override IQueryable <TModel> GetByQuery(ISession currentSession, string queryString, IDictionary parameterDictionary) { global::NHibernate.ISession nativeSession = GetNativeSession(currentSession); ISQLQuery query = nativeSession.CreateSQLQuery(queryString); query.AddEntity(modelType); return(GetByQuery <TModel>(query, parameterDictionary)); }
public override IQueryable <TModel> GetByNamedQuery(ISession currentSession, string queryName, IDictionary parameterDictionary) { global::NHibernate.ISession nativeSession = GetNativeSession(currentSession); IQuery query = nativeSession.GetNamedQuery(queryName); query.SetResultTransformer(resultTransformer); return(GetByQuery <TModel>(query, parameterDictionary)); }
public override void Delete(ISession currentSession, IEnumerable <TModel> models) { global::NHibernate.ISession nativeSession = GetNativeSession(currentSession); foreach (TModel model in models) { nativeSession.Delete(model); } nativeSession.Flush(); }
public override IEnumerable <TModel> Update(ISession currentSession, IEnumerable <TModel> models) { global::NHibernate.IStatelessSession nativeSession = GetNativeSession(currentSession); foreach (TModel model in models) { nativeSession.Update(model); } return(models); }
public override IEnumerable <TModel> Insert(ISession currentSession, IEnumerable <TModel> models) { global::NHibernate.ISession nativeSession = GetNativeSession(currentSession); foreach (TModel model in models) { nativeSession.SaveOrUpdate(model); } nativeSession.Flush(); return(models); }
public override IQueryable <TModel> GetById <TId>(ISession currentSession, TId id) { global::NHibernate.IStatelessSession nativeSession = GetNativeSession(currentSession); //IClassMetadata classMetadata = nativeSession.SessionFactory.GetClassMetadata(ServiceType); IClassMetadata classMetadata = null; Expression <Func <TModel, bool> > expression = BuildGetByIdExpression(classMetadata, id); IQueryable <TModel> queryable = Query(currentSession); IQueryable <TModel> result = queryable.Where(expression); return(result); }
private global::NHibernate.ISession GetNativeSession(ISession currentSession) { NHibernateStatefulSession nHibernateStatefulSession = currentSession as NHibernateStatefulSession; global::NHibernate.ISession nativeSession = nHibernateStatefulSession.InnerSession; IClassMetadata classMetadata = nativeSession.SessionFactory.GetClassMetadata(modelType); if (classMetadata == null) { throw new MissingModelMappingException <TModel>(nHibernateStatefulSession); } return(nativeSession); }
public abstract IQueryable <TModel> Query(ISession currentSession);
public override IQueryable <TModel> GetAll(ISession currentSession) { IQueryable <TModel> queryable = Query(currentSession); return(queryable); }
private global::NHibernate.IStatelessSession GetNativeSession(ISession currentSession) { return(((NHibernateStatelessSession)currentSession).InnerSession); }
public override void Delete(ISession currentSession, TModel model) { global::NHibernate.IStatelessSession nativeSession = GetNativeSession(currentSession); nativeSession.Delete(model); }
public abstract IQueryable <TModel> GetByQuery(ISession currentSession, string queryString, IDictionary parameterDictionary);
public override TModel Update(ISession currentSession, TModel model) { global::NHibernate.IStatelessSession nativeSession = GetNativeSession(currentSession); nativeSession.Update(model); return(model); }
public abstract TModel Insert(ISession currentSession, TModel model);
public abstract IEnumerable <TModel> Insert(ISession currentSession, IEnumerable <TModel> models);
public abstract TModel Update(ISession currentSession, TModel model);
public abstract IQueryable <TModel> GetById <TId>(ISession currentSession, TId id);
public abstract IEnumerable <TModel> Update(ISession currentSession, IEnumerable <TModel> models);
public abstract void Delete(ISession currentSession, IEnumerable <TModel> models);
public abstract void Delete(ISession currentSession, TModel model);