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

M1 Mac Parallels的Win11 ARM环境下,IIS Express网站无法连接SQL Server LocalDB

问题分析与解决方案

核心原因

问题出在**.NET Framework 4.6.1网站的运行架构和LocalDB组件不兼容**:Win11 ARM环境下,.NET Framework网站默认可能以32位模式运行,而SQL LocalDB的SQLUserInstance.dll是ARM64架构,32位进程无法加载ARM64的DLL,就会抛出“%1 is not a valid Win32 application”错误。而WPF等应用直接以ARM64/AnyCPU模式运行,所以能正常加载组件。

具体解决办法

  • 强制网站以ARM64架构运行

    1. 打开网站项目属性,切换到「生成」标签页,将「平台目标」改为ARM64,同时取消勾选「首选32位」选项。
    2. 如果用IIS Express调试,找到项目根目录下的.vs\config\applicationhost.config文件,找到对应站点的应用池配置,把enable32BitAppOnWin64属性改为false:
      <applicationPools>
        <add name="YourAppPoolName" enable32BitAppOnWin64="false" />
      </applicationPools>
      
  • 替换为SQL Server Express服务实例(推荐)
    放弃LocalDB用户实例,改用完整的SQL Server Express(ARM64版本),修改连接字符串为:

    <add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=XXX;Integrated Security=True" providerName="System.Data.SqlClient" />
    

    (如果数据库是分离状态,先附加到SQL Server Express服务中,再使用上述连接字符串)

  • 调整IIS应用池设置(本地IIS部署时)
    打开IIS管理器,找到网站对应的应用池,进入「高级设置」,将「启用32位应用程序」设置为False,确保应用池以ARM64模式运行。

  • 修复SQL Server LocalDB ARM64安装
    卸载现有SQL Server LocalDB,重新下载安装ARM64版本的SQL Server LocalDB,安装完成后重启电脑,确保注册表中指向的SQLUserInstance.dll是ARM64版本的正确路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 00:15:26