Made admin pages dependency injectable

This commit is contained in:
2024-11-22 18:58:39 +01:00
parent e257e36b66
commit c00c30ea3f
14 changed files with 136 additions and 74 deletions

View File

@@ -1,5 +1,5 @@
using System.ComponentModel;
using System.Text.Json.Serialization;
using HopFrame.Web.Admin.Generators.Implementation;
namespace HopFrame.Web.Admin.Models;
@@ -23,4 +23,11 @@ public class AdminPage {
public bool ShowCreateButton { get; set; } = true;
public bool ShowDeleteButton { get; set; } = true;
public bool ShowUpdateButton { get; set; } = true;
public IModelRepository LoadModelRepository(IServiceProvider provider) {
if (RepositoryProvider is null) return null;
var dependencies = AdminContextGenerator.ResolveDependencies(RepositoryProvider, provider);
return Activator.CreateInstance(RepositoryProvider, dependencies) as IModelRepository;
}
}