Exemplo n.º 1
0
 public virtual JsonResult Create(T v, [DataSourceRequest] DataSourceRequest request)
 {
     EntitySaving?.Invoke(this, new EntityEventArgs <T>(v, EntityState.Added));
     Context.Set <T>().Add(v);
     Context.SaveChanges();
     EntitySaved?.Invoke(this, new EntityEventArgs <T>(v, EntityState.Added));
     return(Json(new[] { v }.ToDataSourceResult(request)));
 }
Exemplo n.º 2
0
 public virtual JsonResult Update(T p, [DataSourceRequest] DataSourceRequest request)
 {
     Context.Set <T>().Attach(p);
     Context.Entry(p).State = System.Data.Entity.EntityState.Modified;
     EntitySaving?.Invoke(this, new EntityEventArgs <T>(p, EntityState.Modified));
     Context.SaveChanges();
     EntitySaved?.Invoke(this, new EntityEventArgs <T>(p, EntityState.Modified));
     return(Json(new[] { p }.ToDataSourceResult(request)));
 }
Exemplo n.º 3
0
 public virtual JsonResult Delete(T v, [DataSourceRequest] DataSourceRequest request)
 {
     Context.Set <T>().Attach(v);
     EntitySaving?.Invoke(this, new EntityEventArgs <T>(v, EntityState.Deleted));
     Context.Set <T>().Remove(v);
     try
     {
         Context.SaveChanges();
     }
     catch (SqlException ex)
     {
         if (ex.Errors[0].Number == 547)//FK
         {
             throw new Exception("این اطلاعات جای دیگری استفاده شده است و نمی تواند حذف شود.", ex);
         }
     }
     EntitySaved?.Invoke(this, new EntityEventArgs <T>(v, EntityState.Deleted));
     return(Json(new[] { v }.ToDataSourceResult(request)));
 }