IApplicationBuilder 不包含 UseIdentity 的定义
IApplicationBuilder does not contain a definition for UseIdentity
我正在按照示例在 AspNet Core 3.0
上配置 AspNet Core Identity
这是 StartUp.cs 文件的代码
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Identity;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Users_WEB_APP.Models;
namespace Users_WEB_APP
{
public class Startup
{
public IConfiguration Configuration { get; }
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<AppIdentityDbContext>(options => options.UseSqlServer(Configuration["Data:ASPNET_IDENTITY:ConnectionString"]));
services.AddIdentity<AppUser, IdentityRole>()
.AddEntityFrameworkStores<AppIdentityDbContext>();
services.AddMvc(options => options.EnableEndpointRouting = false);
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app.UseStatusCodePages();
app.UseDeveloperExceptionPage();
app.UseStaticFiles();
app.UseIdentity();
app.UseMvcWithDefaultRoute();
}
}
}
但在线
app.UseIdentity();
我收到错误
'IApplicationBuilder' does not contain a definition for 'UseIdentity',
and no accessible extension method 'UseIdentity' accepting a first
argument of type 'IApplicationBuilder' could be found (are you messing
a using directive or an assembly reference?)
我做错了什么?
文档说从 ASP.NET Core 2.2 开始,应该使用 UseIdentity
is now obsolete and that UseAuthentication
代替
This method is obsolete and will be removed in a future version. The recommended alternative is UseAuthentication(IApplicationBuilder)
使用
app.UseAuthentication();
对我有用
我正在按照示例在 AspNet Core 3.0
上配置 AspNet Core Identity这是 StartUp.cs 文件的代码
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Identity;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Users_WEB_APP.Models;
namespace Users_WEB_APP
{
public class Startup
{
public IConfiguration Configuration { get; }
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<AppIdentityDbContext>(options => options.UseSqlServer(Configuration["Data:ASPNET_IDENTITY:ConnectionString"]));
services.AddIdentity<AppUser, IdentityRole>()
.AddEntityFrameworkStores<AppIdentityDbContext>();
services.AddMvc(options => options.EnableEndpointRouting = false);
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app.UseStatusCodePages();
app.UseDeveloperExceptionPage();
app.UseStaticFiles();
app.UseIdentity();
app.UseMvcWithDefaultRoute();
}
}
}
但在线 app.UseIdentity(); 我收到错误
'IApplicationBuilder' does not contain a definition for 'UseIdentity', and no accessible extension method 'UseIdentity' accepting a first argument of type 'IApplicationBuilder' could be found (are you messing a using directive or an assembly reference?)
我做错了什么?
文档说从 ASP.NET Core 2.2 开始,应该使用 UseIdentity
is now obsolete and that UseAuthentication
代替
This method is obsolete and will be removed in a future version. The recommended alternative is
UseAuthentication(IApplicationBuilder)
使用
app.UseAuthentication();
对我有用