我正在开发一个带有身份登录的.NET核心应用程序,它在/ Identity /Account/Login页面中提供了一个引导表单。
我已经在www.root/lib文件夹中导入了物化CSS 文件,并希望使用物化css更改登录页面的设计。
问题是项目结构中不存在/Identity/Account/Login页面。那我该如何解决这个问题呢?
发布于 2019-03-22 09:36:10
一种方法是将脚手架登录页面添加到您的项目结构中。这样你就可以做任何你想做的改变了。您必须执行以下操作(从我提供的链接):
Login)。
例如,~/Pages/Shared/_Layout.cshtml用于Razor页面,~/Views/Shared/_Layout.cshtml用于MVC项目
注意:如果要创建新的用户上下文,则不必选择要覆盖的文件。
另一种方法是查看登录页源代码并查看元素的ids和类。然后,您可以通过编写比默认CSS更具体的CSS来覆盖默认CSS。
发布于 2019-03-22 16:05:32
在Asp.net Core2.1中,标识UI代码不包含在项目结构中。
您可以在StartUp文件->方法ConfigureServices中看到这一行代码。
services.AddDefaultIdentity<IdentityUser>()
.AddDefaultUI(UIFramework.Bootstrap4)如果要自定义UI,则必须通过以下两种方式生成这组代码:
dotnet aspnet-codegenerator identity -dc WebApplication.Data.ApplicationDbContext发布于 2019-03-22 15:08:18
您看到的默认Identity页面是从项目中的这个dll幕后生成的:
Microsoft.AspNetCore.Identity.UI.Views.V3.dll
--就在这里--
Dependencies >> SDK >> Microsoft.AspNetCore.App(2.2.0)。
按照@Marko Papic一步一步的指令生成Identity页面(或部分),您希望用您的材料css覆盖这些页面。在这些(现在是可查看的页面)中包含了对Identity类、方法、属性等的所有逻辑和命名引用,您需要构建自己的自定义页面。
此外,您不需要坚持默认的Areas/Identity/Pages/Account...文件位置或剃刀语法。如果愿意,您可以创建您自己的MVC版本,或者以您喜欢的任何文件结构/表示形式创建vue.js。
我将一个项目保持在覆盖所有Identity UI页面的一侧(复选框Override all files作为一个方便的参考,在这里我可以带来我需要的东西。
@Marko Papic给了你一个很好的答案,我建议你选择他的答案作为正确的答案。
https://stackoverflow.com/questions/55296041
复制相似问题