protected virtual void GetByIdOnThread <TId>(TId id, ModelReturnCallback callback) { ISession currentSession = Decorated.Session; Decorated.Session = Session; callback(Decorated.GetById <TId>(id)); Decorated.Session = currentSession; }
protected virtual void UpdateOnThread(TModel entity, ModelReturnCallback callback) { ISession currentSession = Decorated.Session; Decorated.Session = Session; callback(Decorated.Update(entity)); Decorated.Session = currentSession; }
protected virtual void LoadByIdOnThread(object id, ModelReturnCallback callback) { ISession currentSession = Decorated.Session; Decorated.Session = Session; callback(Decorated.LoadById(id)); Decorated.Session = currentSession; }
public TModel GetById <TId>(TId id) { ModelReturnCallback callback = GetCallback <ModelReturnCallback>(); ThreadStart threadStart = new ThreadStart(delegate() { GetByIdOnThread <TId>(id, callback); }); Thread thread = new Thread(threadStart); thread.Start(); return(default(TModel)); }
public TModel Update(TModel entity) { ModelReturnCallback callback = GetCallback <ModelReturnCallback>(); ThreadStart threadStart = new ThreadStart(delegate() { UpdateOnThread(entity, callback); }); Thread thread = new Thread(threadStart); thread.Start(); return(default(TModel)); }
public TModel LoadById(object id) { ModelReturnCallback callback = GetCallback <ModelReturnCallback>(); ThreadStart threadStart = new ThreadStart(delegate() { LoadByIdOnThread(id, callback); }); Thread thread = new Thread(threadStart); thread.Start(); return(default(TModel)); }