/// <summary> /// 排他確認 /// </summary> /// <param name="action"></param> /// <returns></returns> private int TryCatchUpdateConcurrencyException(Action action) { try { // 変更処理 action(); // 保存 return(_db.SaveChanges()); } catch (System.Data.Entity.Infrastructure.DbUpdateConcurrencyException) { // 排他発生 _rollBack = true; return(-1); } catch (DbEntityValidationException dbEx) { dbEx.EntityValidationErrors.First().ValidationErrors.ToList().ForEach(x => LogUtility.WriteError(x.ErrorMessage, dbEx) ); throw dbEx; } }
public static void LogStop(Exception ex, string msg) { LogUtility.WriteError(ex.Message, ex); throw new Exception($"Err:{msg}"); }