Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

802
Views
Identidad de ASP.NET Core 2.1: ¿Cómo eliminar las páginas de afeitar de la interfaz de usuario predeterminada?

Ampliando la respuesta en esta pregunta: ¿ Cambiar el enrutamiento en la interfaz de usuario de ASP.NET Core Identity?

Javier recomienda una de las siguientes opciones a la hora de querer personalizar las URLs:

  • Utilice el elemento de andamiaje de la interfaz de usuario predeterminada y realice todas las personalizaciones necesarias usted mismo.
  • Utilice una regla de redirección que dirija las rutas antiguas a las rutas nuevas.
  • No use la interfaz de usuario predeterminada en absoluto.

Desde un nuevo proyecto ASP.NET Core 2.1 MVC, con Autenticación: cuentas de usuario individuales configuradas, ¿cómo NO usa la interfaz de usuario predeterminada? Parece estar instalado de forma predeterminada con Identity Core.

ingrese la descripción de la imagen aquí

Después de crear el proyecto, ¿cuál es el método para eliminar las páginas de afeitar de la interfaz de usuario predeterminada y seguir usando Identity Core?

¿Puedo simplemente eliminar el área /Identity/ y crear mi propio AccountController en su lugar?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Usando el artículo vinculado por Panagiotis Kanavos , pude llegar a una solución.

Desde ASP.NET Core 2.1.0-preview1, había una línea .AddDefaultUI() , que no tenía que incluir en Startup.cs .

 services.AddIdentity<IdentityUser, IdentityRole>(options => options.Stores.MaxLengthForKeys = 128) .AddEntityFrameworkStores<ApplicationDbContext>() .AddDefaultUI() .AddDefaultTokenProviders();

Sin embargo, en la versión de lanzamiento final de Core 2.1, la misma sección se simplificó a:

 services.AddDefaultIdentity<IdentityUser>() .AddEntityFrameworkStores<ApplicationDbContext>();

La solución , si cambia AddDefaultIdentity de nuevo a AddIdentity , puede anular los valores predeterminados. IE no incluye .AddDefaultUI() (y tampoco scaffolding la interfaz de usuario) y puede escribir el suyo propio.

 services.AddIdentity<IdentityUser, IdentityRole>(options => options.Stores.MaxLengthForKeys = 128) .AddEntityFrameworkStores<ApplicationDbContext>() // .AddDefaultUI() .AddDefaultTokenProviders();

Entonces, creo que es seguro eliminar la carpeta /Areas/Identity/ , pero no estoy al 100%

Actualizar:

Limpié mi respuesta para detallar la solución final con la que terminé eligiendo, para eliminar las páginas de afeitar de la interfaz de usuario de identidad predeterminada que vienen con ASP.NET Core 2.1 y usar MVC en su lugar.

1) En Startup.cs ,

 public void ConfigureServices(IServiceCollection services) { // Unrelated stuff commented out... // BEGIN: Identity Setup (Overrides default identity) services.AddIdentity<ApplicationUser, IdentityRole>(options => options.Stores.MaxLengthForKeys = 128) .AddEntityFrameworkStores<ApplicationDbContext>() .AddDefaultTokenProviders(); // END: Identity Setup services.Configure<IdentityOptions>(options => { // Set your identity Settings here (password length, etc.) }); // More unrelated stuff commented out... services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); // Added after AddMvc() services.ConfigureApplicationCookie(options => { options.LoginPath = $"/account/login"; options.LogoutPath = $"/account/logout"; options.AccessDeniedPath = $"/account/access-denied"; }); // More unrelated stuff commented out... }

Y obviamente, reemplace tanto ApplicationUser como IdentityRole con sus propias clases si es necesario.

2) Elimine la carpeta Área para Identidad que viene predeterminada con su proyecto ASP.NET Core 2.1.

3) Cree un nuevo proyecto ASP.NET Core 2.0 separado (no "2.1"), con la autenticación Individual User Account seleccionada en la ventana de creación del proyecto.

4) Copie AccountController y ManageController , con los ViewModels y Views correspondientes, del proyecto 2.0 a su proyecto ASP.NET Core 2.1.

Haciendo lo anterior, no me he encontrado con ningún problema hasta ahora.

over 4 years ago · Santiago Trujillo Report

0

Un poco tarde, pero hay una manera mucho más fácil de hacerlo. Puede agregar nuevos andamios para anular todo. Echa un vistazo a este artículo .

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!