AsNoTracking()

This commit is contained in:
Michał Zieliński
2025-02-19 13:14:06 +01:00
parent 3fe0912640
commit 9b8203e828
15 changed files with 35 additions and 290 deletions

View File

@@ -1,5 +1,6 @@
using Google.Apis.Auth;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.IdentityModel.Tokens;
using System.IdentityModel.Tokens.Jwt;
using System.Security.Claims;
@@ -28,7 +29,7 @@ public class AuthController : Controller
Audience = new List<string> { _configuration.GetValue<string>("GoogleClientId")! }
};
var payload = await GoogleJsonWebSignature.ValidateAsync(credential, settings);
var user = _db.Users.FirstOrDefault(x => x.Email == payload.Email);
var user = _db.Users.AsNoTracking().FirstOrDefault(x => x.Email == payload.Email);
return user != null ? (IActionResult)Ok(JwtGenerator(user)) : Unauthorized();
}

View File

@@ -3,6 +3,7 @@ using System.Text;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Data.SqlClient;
using Microsoft.EntityFrameworkCore;
using WebAPI.Models;
namespace WebAPI.Controllers;
@@ -131,7 +132,7 @@ public class DataInboxController : Controller
[HttpGet]
public IActionResult GetAll()
{
return Ok(_db.DataInbox);
return Ok(_db.DataInbox.AsNoTracking().ToList());
}
// helpers

View File

@@ -57,7 +57,7 @@ public class LayersController : Controller
return Ok(response
.OrderByDescending(x => x.Number)
.Skip(start).Take(limit).ToList());
.Skip(start).Take(limit).AsNoTracking().ToList());
}
catch (Exception e)
{
@@ -73,7 +73,7 @@ public class LayersController : Controller
{
return Ok(_db.Layers
.Include(x => x.CreatedBy)
.Include(x => x.Records).First(x => x.Id == id && !x.IsDeleted));
.Include(x => x.Records).AsNoTracking().First(x => x.Id == id && !x.IsDeleted));
}
catch (Exception e)
{
@@ -150,7 +150,7 @@ public class LayersController : Controller
return Ok(_db.Layers
.Include(x => x.CreatedBy)
.Include(x => x.Records).First(x => x.Number == number && !x.IsDeleted));
.Include(x => x.Records).AsNoTracking().First(x => x.Number == number && !x.IsDeleted));
}
catch (Exception e)
{
@@ -175,7 +175,7 @@ public class LayersController : Controller
}
var layer = _db.Layers
.Include(x => x.Records!.OrderByDescending(y => y.Code)).First(x => x.Id == id && !x.IsDeleted);
.Include(x => x.Records!.OrderByDescending(y => y.Code)).AsNoTracking().First(x => x.Id == id && !x.IsDeleted);
var export = new GoogleSheetExport(_googleDriveHelper, _googleSheetValues, _configuration);
export.Export(layer);
@@ -199,6 +199,7 @@ public class LayersController : Controller
x.Records!.Any(y => y.Code == "IsEnabled" && y.Desc1 == "True")
)
.OrderBy(x => x.CreatedAt)
.AsNoTracking()
.ToList();
if (importWorkerLayers.Count == 0)
@@ -282,6 +283,7 @@ public class LayersController : Controller
x.Records!.Any(y => y.Code == "IsEnabled" && y.Desc1 == "True")
)
.OrderByDescending(x => x.CreatedAt)
.AsNoTracking()
.ToList();
_logsController.AddEntry(new LogEntry
{
@@ -482,6 +484,7 @@ public class LayersController : Controller
x.Records!.Any(y => y.Code == "ProcessType" && y.Desc1 == type)
)
.OrderBy(x => x.CreatedAt)
.AsNoTracking()
.ToList();
if (processWorkerLayers.Count == 0)
@@ -596,21 +599,6 @@ public class LayersController : Controller
});
return;
}
case "T1-R1_OLD":
{
var processor = new T1R1OldProcessor(_db, _googleSheetValues, this, _logsController);
processor.Process(processWorker);
_logsController.AddEntry(new LogEntry
{
Title = $"{processWorker.Name}, {processWorker.Id}",
Type = LogEntryType.Info,
LogType = LogType.Process,
Message = "Success",
CreatedAt = DateTime.UtcNow
});
return;
}
case "T1-R1":
{
var processor = new T1R1Processor(_db, _googleSheetValues, this, _logsController);
@@ -748,6 +736,7 @@ public class LayersController : Controller
.Include(x => x.Records)
.Where(x => x.ParentId == importWorker.Id)
.OrderByDescending(x => x.CreatedAt)
.AsNoTracking()
.FirstOrDefault();
if (newestLayer is null)