【问题标题】:ASP.NET Core UseMicrosoftAccountAuthentication type IApplicationBuilder not definedASP.NET Core UseMicrosoftAccountAuthentication 类型 IApplicationBuilder 未定义
【发布时间】:2015-11-20 21:26:08
【问题描述】:

我能够在 ASP.NET 5 Beta 8 中使用 MicrosoftAccountAuthentication,但 Startup.cs 中的相同代码无法在 RC1 中构建

        app.UseMicrosoftAccountAuthentication(options =>
    {
        options.ClientId = "MyClientId";
        options.ClientSecret = "MyClientSecret";
    });

错误是

The type 'IApplicationBuilder' is defined in an assembly that is not referenced. You must add a reference to assembly  'Microsoft.AspNet.Http.Abstractions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.

但是,在 Beta 8 中不需要程序集 Microsoft.AspNet.Http.Abstractions,并且无法将其添加到使用列表中。

我注意到 Microsoft 文档总是引用使用 Facebook 身份验证。作为外部提供商的 Microsoft 帐户身份验证是否会消失?

【问题讨论】:

    标签: asp.net-core asp.net-core-mvc entity-framework-core asp.net-identity-3


    【解决方案1】:

    当我尝试在 VS 2015 中使用 rc1 工具创建的新 Web 应用程序时,它为我构建。

    我在 project.json 的依赖项中添加了这个

    "Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-rc1-final",
    

    我在 Startup.cs 的顶部添加了这个

    using Microsoft.AspNet.Authentication.MicrosoftAccount;
    

    我将此代码添加到 Startup.cs 的配置方法中,就在 app.UseMvc 之前

    app.UseMicrosoftAccountAuthentication(options =>
    {
        options.ClientId = "MyClientId";
        options.ClientSecret = "MyClientSecret";
    });
    

    它对我来说构建得很好,并在登录页面上显示 Microsoft 按钮,尽管我没有使用真实凭据对其进行测试。

    我怀疑您的 project.json 文件中存在问题,请确保您已将其中的所有内容更新为 rc1 引用,并且任何名为 Microsoft.Framework.* 的内容都必须重命名为 Microsoft.Extensions.*

    如果这不能帮助您解决问题,请更新您的问题以包含您的 project.json 文件内容。

    【讨论】:

      猜你喜欢
      • 2017-02-13
      • 2019-06-17
      • 2020-02-08
      • 1970-01-01
      • 2011-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多