using Microsoft.Extensions.Configuration; using NLog; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MP.AppAuth.Controllers { public class AppAuthController : IDisposable { #region Private Fields private static IConfiguration _configuration; private static AppAuthContext dbCtx; private static NLog.Logger Log = LogManager.GetCurrentClassLogger(); #endregion Private Fields #region Public Constructors public AppAuthController(IConfiguration configuration) { _configuration = configuration; dbCtx = new AppAuthContext(configuration); Log.Info("Avviata classe AppAuthController"); } #endregion Public Constructors #region Public Methods public void Dispose() { // Clear database context dbCtx.Dispose(); } public void ResetController() { dbCtx = new AppAuthContext(_configuration); Log.Info("Effettuato reset AppAuthController"); } /// /// Annulla modifiche su una specifica entity (cancel update) /// /// /// public bool RollBackEntity(object item) { bool answ = false; try { if (dbCtx.Entry(item).State == Microsoft.EntityFrameworkCore.EntityState.Deleted || dbCtx.Entry(item).State == Microsoft.EntityFrameworkCore.EntityState.Modified) { dbCtx.Entry(item).Reload(); } } catch (Exception exc) { Log.Error($"Eccezione in rollBackEntity{Environment.NewLine}{exc}"); } return answ; } /// /// Elenco Record x gestione Update /// /// public List UpdManGetAll() { List dbResult = new List(); dbResult = dbCtx .DbSetUpdMan //.Where(x => !string.IsNullOrEmpty(x.AppName)) .ToList(); return dbResult; } /// /// Elenco Record x gestione Update /// /// public List VocabolarioGetAll() { List dbResult = new List(); dbResult = dbCtx .DbSetVocabolario .ToList(); return dbResult; } #endregion Public Methods } }