diff --git a/radiuscontroller.sln.DotSettings.user b/radiuscontroller.sln.DotSettings.user
new file mode 100644
index 0000000..1475425
--- /dev/null
+++ b/radiuscontroller.sln.DotSettings.user
@@ -0,0 +1,2 @@
+
+ ForceIncluded
\ No newline at end of file
diff --git a/radiuscontroller/Services/RadiusService.cs b/radiuscontroller/Services/RadiusService.cs
index 5c3822f..ac1bca5 100644
--- a/radiuscontroller/Services/RadiusService.cs
+++ b/radiuscontroller/Services/RadiusService.cs
@@ -164,13 +164,13 @@ public class RadiusService : IRadiusService
public async Task> GetAllUsersWithUsageAsync()
{
- var profiles = await _db.GuestProfiles.OrderByDescending(p => p.CreatedAt).ToListAsync();
- var passwords = await _db.RadCheck
+ var profiles = await _db.GuestProfiles.AsNoTracking().OrderByDescending(p => p.CreatedAt).ToListAsync();
+ var passwords = await _db.RadCheck.AsNoTracking()
.Where(rc => rc.Attribute == "Cleartext-Password")
.ToDictionaryAsync(rc => rc.Username, rc => rc.Value);
// Group accounting data by username (for session time and connection status)
- var acctStats = await _db.RadAcct
+ var acctStats = await _db.RadAcct.AsNoTracking()
.GroupBy(ra => ra.Username)
.Select(g => new
{
@@ -181,7 +181,7 @@ public class RadiusService : IRadiusService
.ToDictionaryAsync(g => g.Username);
// Fetch data usage from the new dedicated table
- var dataUsage = await _db.GuestDataUsage.ToDictionaryAsync(du => du.Username);
+ var dataUsage = await _db.GuestDataUsage.AsNoTracking().ToDictionaryAsync(du => du.Username);
var result = new List();
@@ -213,7 +213,7 @@ public class RadiusService : IRadiusService
public async Task> GetActiveSessionsAsync()
{
- return await _db.RadAcct
+ return await _db.RadAcct.AsNoTracking()
.Where(ra => ra.AcctStopTime == null)
.OrderByDescending(ra => ra.AcctStartTime)
.ToListAsync();