| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- using CD67.FicheCollege.Entity;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Data.Entity;
- using System.Linq.Expressions;
- using System.Linq.Dynamic;
- namespace CD67.FicheCollege.Factory
- {
- public class EducfEtablissementFactory : IDisposable
- {
- /// <summary>
- /// Context Entity Framework utilisé dans la classe
- /// </summary>
- protected EducfEntities dbContext;
- #region Constructeurs
- /// <summary>
- /// Constructeur sans argument pour les classes sans contexts Entity
- /// </summary>
- public EducfEtablissementFactory() { }
- /// <summary>
- /// Constructeur avec initialisation du context Entity Framework
- /// </summary>
- /// <param name="dbContext">Context Entity Framework</param>
- public EducfEtablissementFactory(EducfEntities dbContext)
- {
- this.dbContext = dbContext;
- }
- #endregion
- #region Méthodes génériques
- private DbSet<etablissement> ObjectSet
- {
- get
- {
- return this.dbContext.Set<etablissement>();
- }
- }
- public virtual etablissement getById(params object[] keyValues)
- {
- return ObjectSet.Find(keyValues);
- }
- public virtual etablissement getByRne(string codeRne)
- {
- return ObjectSet.Where(e => e.numero == codeRne).FirstOrDefault();
- }
- public virtual etablissement getBy(Expression<Func<etablissement, bool>> expression)
- {
- return ObjectSet.Where(expression).FirstOrDefault();
- }
- public virtual etablissement getBy(string dynamicExpression)
- {
- return ObjectSet.Where(dynamicExpression).FirstOrDefault();
- }
- public virtual IQueryable<etablissement> getAll()
- {
- return getAll(null);
- }
- public virtual IQueryable<etablissement> getAll(string sortParameter = null)
- {
- if (sortParameter != null) return ObjectSet.OrderBy(sortParameter);
- else return ObjectSet;
- }
- public virtual IQueryable<etablissement> getManyBy(Expression<Func<etablissement, bool>> expression, string sortParameter = null)
- {
- IQueryable<etablissement> query = ObjectSet.Where(expression);
- if (sortParameter != null) query = query.OrderBy(sortParameter);
- return query;
- }
- public virtual IQueryable<etablissement> getManyBy(string dynamicExpression, string sortParameter = null)
- {
- IQueryable<etablissement> query = ObjectSet.Where(dynamicExpression);
- if (sortParameter != null) query = query.OrderBy(sortParameter);
- return query;
- }
- #endregion
- #region Dispose
- private bool disposed = false;
- /// <summary>
- /// Fonction pour détruire proprement la classe après utilisation
- /// </summary>
- /// <param name="disposing"></param>
- protected virtual void Dispose(bool disposing)
- {
- if (!this.disposed)
- {
- if (disposing)
- {
- dbContext.Dispose();
- }
- }
- this.disposed = true;
- }
- /// <summary>
- /// Fonction pour détruire proprement la classe après utilisation
- /// </summary>
- public void Dispose()
- {
- Dispose(true);
- GC.SuppressFinalize(this);
- }
- #endregion
- }
- }
|