ASP.NET Core Identity登录页面冗余链接来源排查求助
ASP.NET Core Identity登录页面冗余链接排查方案
先找对核心修改文件:你改动的
_LoginPartial.cshtml只是导航栏的登录入口,实际登录页面的「Forgot Password」「Register」等链接都写在Areas/Identity/Pages/Account/Login.cshtml里,打开这个文件确认是否真的删除了对应代码块。检查是否使用框架默认Identity视图:如果你的项目里没有
Areas/Identity文件夹,ASP.NET Core会自动调用框架自带的默认视图,你本地修改的文件根本不会生效。解决方式:- 打开NuGet包管理器控制台,先安装代码生成工具:
Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design - 执行脚手架命令生成本地Identity页面:
Scaffold Identity -Login -Register(按需选择要生成的页面),生成后项目会出现Areas/Identity文件夹,再修改里面的Login.cshtml即可。
- 打开NuGet包管理器控制台,先安装代码生成工具:
清理缓存确保修改生效:
- 右键解决方案→「清理解决方案」,再右键→「重建解决方案」
- 手动删除项目目录下的
bin和obj文件夹,重新生成项目 - 浏览器按
Ctrl+Shift+R强制刷新,清除本地缓存
确认启动配置正确性:检查launchSettings.json里的启动项,确保调试的是当前修改的解决方案,不是父文件夹里的其他版本项目。开发环境可开启视图实时编译,在Program.cs里添加以下代码,修改视图后无需重启就能看到效果:
builder.Services.AddControllersWithViews().AddRazorRuntimeCompilation();排查其他视图引用:检查登录页面的布局页(_Layout.cshtml)、其他Partial视图或ViewComponent,看是否有通过其他逻辑渲染这些冗余链接的情况。
内容的提问来源于stack exchange,提问作者Dave
相关产品推荐
相关产品推荐

