等同于 ASP.NET Core 2.0 中的 GetExternalAuthenticationTypes()?

Equivalent to GetExternalAuthenticationTypes() in ASP.NET Core 2.0?

我花了很长时间尝试将 ASP.NET 5.0 应用程序转换为 ASP.NET Core 2,但我找不到一些东西。我正在尝试获取当前安装支持的外部提供商(Google、Facebook 等)的列表。 Pre Core,我会使用:

Context.GetOwinContext().Authentication.GetExternalAuthenticationTypes()

当然,由于 OWIN 参考,我不能再使用它了,但我也无法在其他任何地方找到类似的功能。我不想手动设置它。是否有使用它来创建漂亮的社交登录页面的示例?任何帮助将不胜感激!

你需要SignInManager.GetExternalAuthenticationSchemesAsync吗?

var loginProviders = (await SignInManager.GetExternalAuthenticationSchemesAsync()).ToList();
        <div>
            <p>
                @foreach (var provider in loginProviders)
                {
                    <button type="submit" class="btn btn-default" name="provider" value="@provider.Name" title="Log in using your @provider.DisplayName account">@provider.DisplayName</button>
                }
            </p>
        </div>
    </form>
}