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

项目部署至主机后MultiView控件失效及SQL登录失败问题求助

解决部署至主机后的两个问题:数据库登录失败与MultiView控件失效

咱先从最明确的数据库登录错误入手,这个大概率是导致后续控件异常的核心原因,再顺带着解决MultiView的问题。

一、用户'WIN-1JU0K094NDD\IWPD_334(loyaltoi)'登录失败

这个错误的本质是:你在Visual Studio本地运行时,用的是你自己的Windows账户访问数据库,但部署到IIS后,网站是用IIS应用池的内置账户来连接数据库的,而这个账户没有被授权访问你的SQL Server数据库。

解决办法二选一:

  • 方法1:给应用池账户授权SQL访问权限

    1. 打开SQL Server Management Studio(SSMS),连接到你的数据库服务器
    2. 找到目标数据库,右键 → 属性 → 权限 → 添加
    3. 在弹出的选择用户或组窗口中,输入错误提示里的完整账户名:WIN-1JU0K094NDD\IWPD_334(loyaltoi),点击检查名称确认存在后添加
    4. 给这个账户分配必要的权限,比如db_datareader、db_datawriter(根据你的业务需求调整),点击确定保存
  • 方法2:改用SQL Server身份验证

    1. 先确保你的SQL Server已经开启了混合身份验证模式(在SSMS中右键服务器 → 属性 → 安全性 → 选择SQL Server和Windows身份验证模式)
    2. 修改Web.config里的数据库连接字符串,把Windows身份验证改成SQL账号密码:
      <connectionStrings>
          <add name="YourConnStringName" 
               connectionString="Server=你的数据库服务器名;Database=你的数据库名;User Id=SQL登录账号;Password=SQL登录密码;" 
               providerName="System.Data.SqlClient" />
      </connectionStrings>
      
    3. 重启IIS应用池,让配置生效

二、MultiView及视图控件无法正常工作

这个问题很多时候是数据库错误导致页面逻辑中断引发的,所以先解决上面的登录问题后,先测试一下控件是否恢复正常。如果还是有问题,可以排查以下几点:

  • 检查ViewState是否开启:MultiView依赖ViewState来记住当前激活的视图,打开Web.config,确认pages节点的enableViewState属性是true:
    <pages enableViewState="true" ...>
    
  • 确认.NET版本匹配:IIS应用池的.NET版本要和你Visual Studio项目的目标框架一致(比如项目用的是.NET Framework 4.7.2,IIS里应用池也要选对应的版本)
  • 查看服务器错误日志:打开服务器的事件查看器,定位到Windows日志 → 应用程序,查看ASP.NET相关的错误日志,里面会有更详细的控件失效原因

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 07:06:32