diff --git a/Oqtane.Server/Repository/PageModuleRepository.cs b/Oqtane.Server/Repository/PageModuleRepository.cs
index bc24ffa8..a6f81b69 100644
--- a/Oqtane.Server/Repository/PageModuleRepository.cs
+++ b/Oqtane.Server/Repository/PageModuleRepository.cs
@@ -29,7 +29,8 @@ namespace Oqtane.Repository
{
using var db = _dbContextFactory.CreateDbContext();
var pagemodules = db.PageModule
- .Include(item => item.Module) // eager load modules
+ .Include(item => item.Module) // eager load module
+ .Include(item => item.Page) // eager load page
.Where(item => item.Module.SiteId == siteId).ToList();
if (pagemodules.Any())
{
@@ -70,12 +71,16 @@ namespace Oqtane.Repository
PageModule pagemodule;
if (tracking)
{
- pagemodule = db.PageModule.Include(item => item.Module) // eager load modules
+ pagemodule = db.PageModule
+ .Include(item => item.Module) // eager load module
+ .Include(item => item.Page) // eager load page
.FirstOrDefault(item => item.PageModuleId == pageModuleId);
}
else
{
- pagemodule = db.PageModule.AsNoTracking().Include(item => item.Module) // eager load modules
+ pagemodule = db.PageModule.AsNoTracking()
+ .Include(item => item.Module) // eager load module
+ .Include(item => item.Page) // eager load page
.FirstOrDefault(item => item.PageModuleId == pageModuleId);
}
if (pagemodule != null)
@@ -90,7 +95,9 @@ namespace Oqtane.Repository
public PageModule GetPageModule(int pageId, int moduleId)
{
using var db = _dbContextFactory.CreateDbContext();
- var pagemodule = db.PageModule.Include(item => item.Module) // eager load modules
+ var pagemodule = db.PageModule
+ .Include(item => item.Module) // eager load module
+ .Include(item => item.Page) // eager load page
.SingleOrDefault(item => item.PageId == pageId && item.ModuleId == moduleId);
if (pagemodule != null)
{
@@ -104,7 +111,9 @@ namespace Oqtane.Repository
public void DeletePageModule(int pageModuleId)
{
using var db = _dbContextFactory.CreateDbContext();
- var pageModule = db.PageModule.Include(item => item.Module) // eager load modules
+ var pageModule = db.PageModule
+ .Include(item => item.Module) // eager load module
+ .Include(item => item.Page) // eager load page
.SingleOrDefault(item => item.PageModuleId == pageModuleId);
_settings.DeleteSettings(EntityNames.PageModule, pageModuleId);
db.PageModule.Remove(pageModule);
@@ -140,6 +149,7 @@ namespace Oqtane.Repository
}
}
pageModule.Module.PermissionList = permissions?.ToList();
+
return pageModule;
}
}
diff --git a/Oqtane.Shared/Models/PageModule.cs b/Oqtane.Shared/Models/PageModule.cs
index e3f0adb9..0e7c812f 100644
--- a/Oqtane.Shared/Models/PageModule.cs
+++ b/Oqtane.Shared/Models/PageModule.cs
@@ -59,8 +59,12 @@ namespace Oqtane.Models
///
/// The itself.
- /// TODO: todoc - unclear if this is always populated
///
public Module Module { get; set; }
+
+ ///
+ /// The itself.
+ ///
+ public Page Page { get; set; }
}
}