ABP 4.0 Blazor-覆盖标识视图



我正在使用Blazor UI试用ABP 4.0,并希望覆盖用户管理的内置视图。检查源代码时,我发现UserManagement.razor文件的路径是"/身份/用户"-这与我要覆盖的视图相匹配。

我(我相信(遵循了以下步骤:https://docs.abp.io/en/abp/latest/UI/Blazor/Customization-Overriding-Components.然而,当运行该网站时,我仍然会得到标准的内置用户列表。

Pages/Identity/UserManagement.razor(在我的wwwroot文件夹中(:

@inherits Volo.Abp.Identity.Blazor.Pages.Identity.UserManagement
<h2>This is not the standard page</h2>

Pages/Identity/UserManagement.razor.cs

using Volo.Abp.DependencyInjection;
namespace BlazorDemo.Blazor.Pages.Identity
{
[ExposeServices(typeof(UserManagement))]
[Dependency(ReplaceServices = true)]
public partial class UserManagement
{
}
}

我错过什么了吗?

为自己的组件使用不同的名称,如MyUserManagement.razor。否则,compiler无法区分类。例如,

using Volo.Abp.DependencyInjection;
namespace BlazorDemo.Blazor.Pages.Identity
{
[ExposeServices(typeof(UserManagement))] //MUST BE Volo.Abp.Identity.Blazor.Pages.Identity.UserManagement
[Dependency(ReplaceServices = true)]
public partial class UserManagement
{
}
}

在这里,ExposeServices公开自己(您的类(,而不是Volo.Abp.Identity.Blazor.Pages.Identity.UserManagement。如果您将组件重命名为MyUserManagement,则不会犯以下错误:(

最新更新