private void CurrentContext_OnAfterExecute(object sender, EntityQueryExecuteEventArgs e) { if (e.ExecuteType == EntityQueryExecuteType.Delete) { //保存删除的ID信息 到指定的表 string pkName = e.Entity.PrimaryKeys[0]; object pkValue = e.Entity[pkName]; DeletedPKIDEntity idEntity = new Entitys.DeletedPKIDEntity(); if (pkValue is string) { idEntity.TargetID = 0; idEntity.TargetStringID = pkValue.ToString(); } else { idEntity.TargetID = Convert.ToInt64(pkValue); idEntity.TargetStringID = ""; } idEntity.TargetTableName = e.Entity.GetTableName(); idEntity.DeletedTime = DateTime.Now; OptDbContext.Add(idEntity); OptDbContext.CurrentDataBase.Commit(); } }
private void CurrentContext_OnBeforeExecute(object sender, EntityQueryExecuteEventArgs e) { IExportTable exportTable = e.Entity as IExportTable; if (exportTable != null) { exportTable.BatchNumber = 0; } if (e.ExecuteType == EntityQueryExecuteType.Delete) { OptDbContext.CurrentDataBase.BeginTransaction(); } }
private void OptDbContext_OnBeforeExecute(object sender, EntityQueryExecuteEventArgs e) { throw new NotSupportedException(); }