You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 9中含AuthenticationProperties的ExternalLoginInfo如何实例化?

解决ExternalLoginInfo无AuthenticationProperties属性的问题

问题根源

你遇到的CS1061错误,是因为当前代码引用的ExternalLoginInfo是不包含AuthenticationProperties属性的派生类,而带该属性的同名类来自Microsoft.AspNetCore.Identity包的.NET 9对应版本实现。

解决方案

1. 确认NuGet包版本

确保安装的Microsoft.AspNetCore.Identity包版本与.NET 9 SDK匹配(即9.x.x版本)。可在项目文件(.csproj)中检查:

<PackageReference Include="Microsoft.AspNetCore.Identity" Version="9.0.*" />

2. 明确指定命名空间

在代码中使用完全限定名引用正确的ExternalLoginInfo,避免与其他程序集中的同名类冲突:

using Microsoft.AspNetCore.Identity;

// 使用带AuthenticationProperties参数的构造函数实例化
var authProps = new AuthenticationProperties();
var externalLoginInfo = new ExternalLoginInfo(
    new ClaimsPrincipal(),
    "LoginProviderName", // 例如"Google"、"GitHub"
    "UserUniqueProviderKey",
    "UserDisplayName",
    authProps
);

3. 排查冲突依赖

如果项目同时引用了其他包含ExternalLoginInfo的程序集(如旧版Identity相关包),可做以下调整:

  • 移除不必要的旧版依赖包
  • 在项目文件中通过调整引用顺序,优先加载.NET 9版本的Microsoft.AspNetCore.Identity程序集

4. 验证当前引用的类型

通过以下代码确认当前代码使用的ExternalLoginInfo所属程序集:

Console.WriteLine(typeof(ExternalLoginInfo).Assembly.FullName);

若输出版本不是9.x,说明引用了旧版程序集,需调整NuGet包或项目依赖。

内容的提问来源于stack exchange,提问作者camcam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 06:42:34