.NET Core身份-无需覆盖现有文件的脚手架页面

时间:2019-07-29 00:18:52

标签: c# asp.net-core .net-core asp.net-identity asp.net-mvc-scaffolding

我有一个使用Identity的.NET Core 2.2 MVC应用程序。由于我使用的是Visual Studio for Mac,因此必须使用CLI来搭建身份文件。最初,我只需要几个文件,因此我使用以下命令来生成所需的文件:

dotnet aspnet-codegenerator identity --files="Account.Manage.ChangePassword;Account.Register;Account.ResetPassword;Account.ResetPasswordConfirmation;Account.Manage.SetPassword;Account.Manage.Index"

我现在正在尝试通过运行以下命令来生成另一个文件:

dotnet aspnet-codegenerator identity --files="Account.Manage.EnableAuthenticator"

但是出现以下错误: 以下文件存在。使用'--force'覆盖:Areas / Identity / Data / SAFDtoolsIdentityDbContext.cs 区域/身份/页面/帐户/管理/_ManageNav.cshtml 区域/身份/页面/帐户/管理/ManageNavPages.cs

是否可以生成其他文件而不覆盖现有文件?我不想丢失我已经进行的任何自定义。

此外,如果我使用--force,则仅错误中的3个文件将被覆盖,或者我已经生成的每个文件都将被覆盖?

1 个答案:

答案 0 :(得分:0)

每个文件名(例如Account.Manage.EnableAuthenticator)包含几个文件,它们在identitygeneratorfilesconfig.json模板中列出:

https://github.com/aspnet/Scaffolding/blob/release/2.2/src/VS.Web.CG.Mvc/Identity/bootstrap4_identitygeneratorfilesconfig.json#L301

当前看来,它将覆盖现有文件,并且没有找到禁用行为的选项,您可以使用dotnet aspnet-codegenerator identity --listFiles,它将显示需要使用--force进行覆盖的现有文件。

  

此外,如果我使用--force,则仅错误中的3个文件将被覆盖,或者我已经生成的每个文件都将被覆盖?

它将覆盖3个文件,您可以复制/保存代码的自定义部分,并将该部分代码粘贴到新创建的文件中。