AppDbContext: Move all calls to App.HintContextChange() outside of any AppDbContext block
All checks were successful
Test / Run tests (push) Successful in 2m44s
All checks were successful
Test / Run tests (push) Successful in 2m44s
This commit is contained in:
@ -53,7 +53,7 @@ namespace Elwig {
|
||||
public static Dispatcher MainDispatcher { get; private set; }
|
||||
private DateTime LastChanged;
|
||||
private static DateTime CurrentLastWrite => File.GetLastWriteTime(Config.DatabaseFile);
|
||||
private readonly DispatcherTimer ContextTimer = new() { Interval = TimeSpan.FromSeconds(5) };
|
||||
private readonly DispatcherTimer ContextTimer = new() { Interval = TimeSpan.FromSeconds(2) };
|
||||
|
||||
public App() : base() {
|
||||
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
|
||||
|
@ -100,9 +100,9 @@ namespace Elwig.Services {
|
||||
}
|
||||
|
||||
public static async Task<int> UpdateAreaCommitment(this AreaComAdminViewModel vm, int? oldFbNr) {
|
||||
using var ctx = new AppDbContext();
|
||||
int newFbNr = (int)vm.FbNr!;
|
||||
|
||||
using (var ctx = new AppDbContext()) {
|
||||
var a = new AreaCom {
|
||||
FbNr = oldFbNr ?? newFbNr,
|
||||
MgNr = (int)vm.MgNr!,
|
||||
@ -134,6 +134,7 @@ namespace Elwig.Services {
|
||||
if (newFbNr != a.FbNr) {
|
||||
await ctx.Database.ExecuteSqlAsync($"UPDATE area_commitment SET fbnr = {newFbNr} WHERE fbnr = {oldFbNr}");
|
||||
}
|
||||
}
|
||||
|
||||
await App.HintContextChange();
|
||||
|
||||
|
@ -502,8 +502,9 @@ namespace Elwig.Services {
|
||||
}
|
||||
|
||||
public static async Task<int> UpdateMember(this MemberAdminViewModel vm, int? oldMgNr) {
|
||||
using var ctx = new AppDbContext();
|
||||
var newMgNr = (int)vm.MgNr!;
|
||||
|
||||
using (var ctx = new AppDbContext()) {
|
||||
var m = new Member {
|
||||
MgNr = oldMgNr ?? newMgNr,
|
||||
PredecessorMgNr = vm.PredecessorMgNr,
|
||||
@ -623,6 +624,7 @@ namespace Elwig.Services {
|
||||
if (newMgNr != m.MgNr) {
|
||||
await ctx.Database.ExecuteSqlAsync($"UPDATE member SET mgnr = {newMgNr} WHERE mgnr = {oldMgNr}");
|
||||
}
|
||||
}
|
||||
|
||||
await App.HintContextChange();
|
||||
|
||||
|
@ -662,7 +662,7 @@ namespace Elwig.Windows {
|
||||
|
||||
private async void SaveButton_Click(object sender, RoutedEventArgs e) {
|
||||
try {
|
||||
using var ctx = new AppDbContext();
|
||||
using (var ctx = new AppDbContext()) {
|
||||
var origData = BillingData.FromJson(PaymentVar.Data);
|
||||
var data = BillingData.FromGraphEntries(GraphEntries, origData, Utils.GetVaributes(ctx, Year),
|
||||
AllVaributesAssigned, AllVaributesAssignedAbgew);
|
||||
@ -670,6 +670,7 @@ namespace Elwig.Windows {
|
||||
PaymentVar.Data = data.ToJsonString();
|
||||
ctx.Update(PaymentVar);
|
||||
await ctx.SaveChangesAsync();
|
||||
}
|
||||
LockContext = false;
|
||||
await App.HintContextChange();
|
||||
} catch (Exception exc) {
|
||||
|
@ -225,8 +225,9 @@ namespace Elwig.Windows {
|
||||
|
||||
private async void AddButton_Click(object sender, RoutedEventArgs evt) {
|
||||
try {
|
||||
using var ctx = new AppDbContext();
|
||||
var v = new PaymentVar {
|
||||
PaymentVar? v;
|
||||
using (var ctx = new AppDbContext()) {
|
||||
v = new PaymentVar {
|
||||
Year = Year,
|
||||
AvNr = await ctx.NextAvNr(Year),
|
||||
Name = "Neue Auszahlungsvariante",
|
||||
@ -237,6 +238,8 @@ namespace Elwig.Windows {
|
||||
|
||||
ctx.Add(v);
|
||||
await ctx.SaveChangesAsync();
|
||||
}
|
||||
|
||||
await App.HintContextChange();
|
||||
|
||||
ControlUtils.SelectItem(PaymentVariantList, v);
|
||||
@ -250,8 +253,9 @@ namespace Elwig.Windows {
|
||||
private async void CopyButton_Click(object sender, RoutedEventArgs evt) {
|
||||
if (PaymentVariantList.SelectedItem is not PaymentVar orig) return;
|
||||
try {
|
||||
using var ctx = new AppDbContext();
|
||||
var n = new PaymentVar {
|
||||
PaymentVar? n;
|
||||
using (var ctx = new AppDbContext()) {
|
||||
n = new PaymentVar {
|
||||
Year = orig.Year,
|
||||
AvNr = await ctx.NextAvNr(Year),
|
||||
Name = $"{orig.Name} (Kopie)",
|
||||
@ -262,6 +266,8 @@ namespace Elwig.Windows {
|
||||
|
||||
ctx.Add(n);
|
||||
await ctx.SaveChangesAsync();
|
||||
}
|
||||
|
||||
await App.HintContextChange();
|
||||
|
||||
ControlUtils.SelectItem(PaymentVariantList, n);
|
||||
@ -275,9 +281,10 @@ namespace Elwig.Windows {
|
||||
private async void DeleteButton_Click(object sender, RoutedEventArgs evt) {
|
||||
if (PaymentVariantList.SelectedItem is not PaymentVar v || !v.TestVariant) return;
|
||||
try {
|
||||
using var ctx = new AppDbContext();
|
||||
using (var ctx = new AppDbContext()) {
|
||||
ctx.Remove(v);
|
||||
await ctx.SaveChangesAsync();
|
||||
}
|
||||
await App.HintContextChange();
|
||||
} catch (Exception exc) {
|
||||
var str = "Der Eintrag konnte nicht in der Datenbank aktualisiert werden!\n\n" + exc.Message;
|
||||
|
@ -80,17 +80,17 @@ namespace Tests.HelperTests {
|
||||
}
|
||||
|
||||
private Task<Dictionary<string, AreaComBucket>> GetMemberAreaCommitmentBuckets(int year, int mgnr) {
|
||||
var ctx = new AppDbContext();
|
||||
using var ctx = new AppDbContext();
|
||||
return ctx.GetMemberAreaCommitmentBuckets(year, mgnr, Connection);
|
||||
}
|
||||
|
||||
private Task<Dictionary<string, int>> GetMemberDeliveryBuckets(int year, int mgnr) {
|
||||
var ctx = new AppDbContext();
|
||||
using var ctx = new AppDbContext();
|
||||
return ctx.GetMemberDeliveryBuckets(year, mgnr, Connection);
|
||||
}
|
||||
|
||||
private Task<Dictionary<string, int>> GetMemberPaymentBuckets(int year, int mgnr) {
|
||||
var ctx = new AppDbContext();
|
||||
using var ctx = new AppDbContext();
|
||||
return ctx.GetMemberPaymentBuckets(year, mgnr, Connection);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user