public void Exclua(string id)
 {
     using (var sessaoRaven = PersistenciaRavenDb.AbraSessao())
     {
         sessaoRaven.Delete(id);
     }
 }
 public T Consulte(string id)
 {
     using (var sessaoRaven = PersistenciaRavenDb.AbraSessao())
     {
         return(sessaoRaven.Load <T>(id));
     }
 }
 public List <T> ConsulteLista(Expression <Func <T, bool> > filtro = null)
 {
     using (var sessaoRaven = PersistenciaRavenDb.AbraSessao())
     {
         return(filtro == null
             ? sessaoRaven.Query <T>().ToList()
             : sessaoRaven.Query <T>().Where(filtro).ToList());
     }
 }
示例#4
0
        public static void SalveNoBanco(this object objeto)
        {
            var method = typeof(MegaUtilitarios).GetMethod("ObtenhaObjetoCongelado")
                         .MakeGenericMethod(new[] { objeto.GetType() });

            var objetoCongelado = method.Invoke(null, new[] { objeto });


            using (var sessaoRaven = PersistenciaRavenDb.AbraSessao())
            {
                sessaoRaven.Store(objetoCongelado);
                sessaoRaven.SaveChanges();
            }
        }
        public void Atualize(T objeto)
        {
            using (var sessaoRaven = PersistenciaRavenDb.AbraSessao())
            {
                var id = objeto.GetType().GetProperty("Id")?.GetValue(objeto).ToString();

                var objetoPersistido = sessaoRaven.Load <T>(id);
                if (objetoPersistido != null)
                {
                    objetoPersistido = objeto;

                    sessaoRaven.SaveChanges();
                }
            }
        }
        public void Insira(T objeto)
        {
            using (var sessaoRaven = PersistenciaRavenDb.AbraSessao())
            {
                var idProperty = objeto.GetType().GetProperty("Id");
                if (idProperty != null)
                {
                    sessaoRaven.Store(objeto, idProperty.GetValue(objeto).ToString());
                }
                else
                {
                    sessaoRaven.Store(objeto);
                }

                sessaoRaven.SaveChanges();
            }
        }