Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 尝试使用身份验证生成器时找不到定义';s AddTwitter()_C#_Asp.net_.net_Twitter_Oauth 2.0 - Fatal编程技术网

C# 尝试使用身份验证生成器时找不到定义';s AddTwitter()

C# 尝试使用身份验证生成器时找不到定义';s AddTwitter(),c#,asp.net,.net,twitter,oauth-2.0,C#,Asp.net,.net,Twitter,Oauth 2.0,在尝试将Twitter外部登录添加到我的SPA ASP.NET应用程序时,我遇到了一个错误: 'AuthenticationBuilder' does not contain a definition for 'AddTwitter' and no accessible extension method 'AddTwitter' accepting a first argument of type 'AuthenticationBuilder' could be found (are you m

在尝试将Twitter外部登录添加到我的SPA ASP.NET应用程序时,我遇到了一个错误:

'AuthenticationBuilder' does not contain a definition for 'AddTwitter' and no accessible extension method 'AddTwitter' accepting a first argument of type 'AuthenticationBuilder' could be found (are you missing a using directive or an assembly reference?)
这是指my Startup.cs的第36行:

public IConfiguration Configuration { get; }

    // This method gets called by the runtime. Use this method to add services to the container.
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddDbContext<ApplicationDbContext>(options =>
            options.UseSqlServer(
                Configuration.GetConnectionString("DefaultConnection")));

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

        services.AddAuthentication().AddTwitter(twitterOptions =>
        {
            twitterOptions.ConsumerKey = Configuration["Authentication:Twitter:ConsumerAPIKey"];
            twitterOptions.ConsumerSecret = Configuration["Authentication:Twitter:ConsumerSecret"];
        });

        services.AddIdentityServer()
            .AddApiAuthorization<ApplicationUser, ApplicationDbContext>();

        services.AddAuthentication()
            .AddIdentityServerJwt();

        services.AddControllersWithViews();
        services.AddRazorPages();

        // In production, the React files will be served from this directory
        services.AddSpaStaticFiles(configuration =>
        {
            configuration.RootPath = "ClientApp/build";
        });
    }
公共IConfiguration配置{get;}
//此方法由运行时调用。使用此方法向容器中添加服务。
public void配置服务(IServiceCollection服务)
{
services.AddDbContext(选项=>
options.UseSqlServer(
GetConnectionString(“DefaultConnection”);
services.AddDefaultIdentity()
.AddEntityFrameworkStores();
services.AddAuthentication().AddTwitter(twitterOptions=>
{
twitterOptions.ConsumerKey=配置[“身份验证:Twitter:ConsumerKey”];
twitterOptions.ConsumerCret=配置[“身份验证:Twitter:ConsumerCret”];
});
services.AddIdentityServer()
.addapi授权();
services.AddAuthentication()
.AddIdentityServerJwt();
services.AddControllersWithViews();
services.AddRazorPages();
//在生产中,React文件将从此目录提供服务
services.AddSpaStaticFiles(配置=>
{
configuration.RootPath=“ClientApp/build”;
});
}
我如何纠正这个问题? 谢谢。

将包添加到项目中

他们忘了把这个放在文件里。他们为Facebook做了