Ejemplo n.º 1
0
        /// <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);
        }