首页 > 解决方案 > 访问身份配置文件管理

问题描述

我被这个问题困扰了两个多小时,在任何地方都找不到答案。我有一个使用身份的项目。我从一开始就创建了一个不使用身份脚手架项目的注册和登录。

接下来,我使用 ApplicationUser:IdentityUSer 将自定义字段添加到用户身份。

现在我想允许用户管理他们的个人资料。我想使用默认的 Identity Manager,然后对其进行自定义。我没有它,所以我添加了一个新的脚手架身份,只有“身份/页面/帐户/管理”项目。它创造了一个区域。

问题是我不知道如何在我的 _LoginPartial 视图中访问该区域内的索引页面。

_LoginPartial 代码的一部分:

 @if (SignInManager.IsSignedIn(User))
 {
     <ul class="navbar-nav flex-grow-1 justify-content-end text-center">
         <li class="nav-item mr-5 text-center">
             <a //here i want to access Index page class="nav-link btn">Hello, @User.Identity.Name</a>
         </li>

         <li class="nav-item">
             <a class="nav-link text-dark" asp-area="" asp-controller="Account" asp-action="Logout">Logout</a>
         </li>
     </ul>
 }
 else
 {

 }

我的项目结构:

这是管理用户个人资料的好方法吗?

标签: asp.net-mvcasp.net-identity

解决方案


让您的第一个<a>标签链接到您的新帐户 | 管理页面,可以包含asp-area,asp-controllerasp-action属性。(类似于您在第二个<a>标签上已有的内容)。

尝试将行更改为:

<a asp-area="Identity" asp-controller="Account" asp-action="Manage" class="nav-link btn">Hello, @User.Identity.Name</a>

推荐阅读