public void LogError(Exception ex) { LogEvent log = new LogEvent(); //log.LogEventType = LogEventType.Error; log.LogEventType = "Error"; log.ChangedByUserId = this.GetCurrentUserId(); log.ChangedByUserName = this.GetCurrentUserName(); log.Date = DateTime.Now; Type entityType = ex.GetType(); log.EntityType = entityType.Name; log.EntityId = "Error"; var tempEx = ex; while (tempEx.StackTrace == null && ex.InnerException != null) { tempEx = tempEx.InnerException; } log.StackTrace = tempEx.StackTrace; while (tempEx.InnerException != null) { tempEx = tempEx.InnerException; } log.ErrorMessage = tempEx.Message; repo.UndoChanges(); repo.Create <LogEvent>(log); }