BaseDataWindow: Remove transactions inside *Save() functions to avoid nesting them
This commit is contained in:
@@ -41,7 +41,6 @@ namespace Elwig.Windows {
|
|||||||
if (!_branchChanged || _branchList == null || _branches == null || _branchIds == null)
|
if (!_branchChanged || _branchList == null || _branches == null || _branchIds == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
var tx = await ctx.Database.BeginTransactionAsync();
|
|
||||||
var deleteZwstIds = _branches.Where(b => b.Value == null).Select(b => b.Key).ToList();
|
var deleteZwstIds = _branches.Where(b => b.Value == null).Select(b => b.Key).ToList();
|
||||||
await ctx.Branches.Where(b => deleteZwstIds.Contains(b.ZwstId)).ExecuteDeleteAsync();
|
await ctx.Branches.Where(b => deleteZwstIds.Contains(b.ZwstId)).ExecuteDeleteAsync();
|
||||||
|
|
||||||
@@ -62,7 +61,6 @@ namespace Elwig.Windows {
|
|||||||
ctx.Add(branch);
|
ctx.Add(branch);
|
||||||
}
|
}
|
||||||
await ctx.SaveChangesAsync();
|
await ctx.SaveChangesAsync();
|
||||||
await tx.CommitAsync();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void BranchList_SelectionChanged(object? sender, SelectionChangedEventArgs? evt) {
|
private void BranchList_SelectionChanged(object? sender, SelectionChangedEventArgs? evt) {
|
||||||
|
|||||||
@@ -41,7 +41,6 @@ namespace Elwig.Windows {
|
|||||||
if (!_attrChanged || _attrList == null || _attrs == null || _attrIds == null)
|
if (!_attrChanged || _attrList == null || _attrs == null || _attrIds == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
using var tx = await ctx.Database.BeginTransactionAsync();
|
|
||||||
var deleteAttrIds = _attrs.Where(a => a.Value == null).Select(a => a.Key).ToList();
|
var deleteAttrIds = _attrs.Where(a => a.Value == null).Select(a => a.Key).ToList();
|
||||||
await ctx.WineAttributes.Where(a => deleteAttrIds.Contains(a.AttrId)).ExecuteDeleteAsync();
|
await ctx.WineAttributes.Where(a => deleteAttrIds.Contains(a.AttrId)).ExecuteDeleteAsync();
|
||||||
foreach (var (attr, old) in _attrIds) {
|
foreach (var (attr, old) in _attrIds) {
|
||||||
@@ -63,7 +62,6 @@ namespace Elwig.Windows {
|
|||||||
ctx.Add(attr);
|
ctx.Add(attr);
|
||||||
}
|
}
|
||||||
await ctx.SaveChangesAsync();
|
await ctx.SaveChangesAsync();
|
||||||
await tx.CommitAsync();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void WineAttributeList_SelectionChanged(object? sender, SelectionChangedEventArgs? evt) {
|
private void WineAttributeList_SelectionChanged(object? sender, SelectionChangedEventArgs? evt) {
|
||||||
|
|||||||
@@ -41,7 +41,6 @@ namespace Elwig.Windows {
|
|||||||
if (!_cultChanged || _cultList == null || _cults == null || _cultIds == null)
|
if (!_cultChanged || _cultList == null || _cults == null || _cultIds == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
using var tx = await ctx.Database.BeginTransactionAsync();
|
|
||||||
var deleteCultIds = _cults.Where(c => c.Value == null).Select(c => c.Key).ToList();
|
var deleteCultIds = _cults.Where(c => c.Value == null).Select(c => c.Key).ToList();
|
||||||
await ctx.WineCultivations.Where(c => deleteCultIds.Contains(c.CultId)).ExecuteDeleteAsync();
|
await ctx.WineCultivations.Where(c => deleteCultIds.Contains(c.CultId)).ExecuteDeleteAsync();
|
||||||
foreach (var (cult, old) in _cultIds) {
|
foreach (var (cult, old) in _cultIds) {
|
||||||
@@ -62,7 +61,6 @@ namespace Elwig.Windows {
|
|||||||
ctx.Add(cult);
|
ctx.Add(cult);
|
||||||
}
|
}
|
||||||
await ctx.SaveChangesAsync();
|
await ctx.SaveChangesAsync();
|
||||||
await tx.CommitAsync();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void WineCultivationList_SelectionChanged(object? sender, SelectionChangedEventArgs? evt) {
|
private void WineCultivationList_SelectionChanged(object? sender, SelectionChangedEventArgs? evt) {
|
||||||
|
|||||||
Reference in New Issue
Block a user