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

Entity Framework Core 7开发环境SQL Server证书信任异常求助

解决EF Core 7连接SQL Server时的SSL证书信任问题

升级到EF Core 7后出现该错误的核心原因是EF Core 7默认强制开启SQL Server连接加密(Encrypt=True),而开发环境的SQL Server Developer使用自签名证书,系统无法信任证书链,导致登录失败。以下是几种有效的缓解方案:

  • 修改连接字符串:在连接字符串中显式添加TrustServerCertificate=True和Encrypt=False(若需保留加密,仅保留TrustServerCertificate=True即可,它会让客户端信任SQL Server的自签名证书),示例:

    Server=.;Database=YourDatabaseName;Trusted_Connection=True;TrustServerCertificate=True;Encrypt=False;
    
  • 在DbContext配置中强制指定信任证书:如果连接字符串修改未生效,可在DbContext的配置代码中直接设置:

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseSqlServer(
            "Server=.;Database=YourDatabaseName;Trusted_Connection=True;",
            sqlOptions => sqlOptions.TrustServerCertificate(true)
        );
    }
    

    这种方式会直接覆盖连接字符串中的相关配置,确保生效。

  • 调整SQL Server实例的加密设置:打开SQL Server配置管理器,依次展开SQL Server网络配置 -> 你的SQL Server实例协议 -> TCP/IP,右键选择属性:

    • 在证书选项卡,确认没有强制绑定证书;
    • 在标志选项卡,将Force Encryption设置为No,重启SQL Server服务后生效。

注意:VS2022服务器资源管理器的设置仅适用于VS内部的数据库连接,不会影响应用程序运行时的连接配置,因此必须在应用的连接字符串或DbContext代码中做修改。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 20:15:17