/// <summary> /// Logs the specified error to database. /// </summary> /// <param name="ex">The exception.</param> /// <param name="db">The database.</param> /// <returns></returns> public static async Task <Exception> Log(this Exception ex, StudentTaskContext db) { var logElement = new LogElement { Message = ex.Message, ElementType = ex.GetType().Name, Source = ex.StackTrace }; db.LogElements.Add(logElement); try { await db.SaveChangesAsync(); } catch (Exception) { // ignored } return(ex); }