今天在搭建项目的测试环境时,遇到一个问题。在Visual studio 上 编译生成都是成功的,但是想要开始执行或者调试时,网页上打开显示如下图片所示信息:
所操作的系统是 在 Mac上 装 Vmware Fusion 装上 windows 10 visual studio 的版本为 2015 professional 版本 已装 iis。
19 回答
三国纷争
TA贡献1804条经验 获得超7个赞
解决这个问题首先要让IIS Express(VS用的是IIS Express)显示具体的错误信息,“无法显示页面,因为发生内部服务器错误”让人无从下手。
让IIS Express显示具体错误信息的方法:打开 %userprofile%\Documents\IISExpress\config 文件夹中的 applicationhost.config 文件,在 httpErrors 配置节点添加 errorMode="Detailed":
紫衣仙女
TA贡献1839条经验 获得超15个赞
想起来了,不能显示具体的错误信息是由于在 Application_Error() 中的 Server.ClearError(); 操作。
protected void Application_Error(Object sender, EventArgs e)
{
var lastError = Server.GetLastError();
if (lastError != null)
{
//...
Response.StatusCode = 500;
Server.ClearError();
}
}
要解决这个问题,可以在开头添加如下的代码:
protected void Application_Error(Object sender, EventArgs e)
{
if (Request.IsLocal)
{
return;
}
//...
}
慕仙森
TA贡献1827条经验 获得超8个赞
@dudu: 嗯嗯,我在操作日志中找到了错误了,其实最根本的出现这个的原因我用 断点 一步一步走下来发现出现错误的都是和数据库打交道的地方,要不是数据库连接sa 登录失败,就是某个需要的字段我本地数据库没有。
有只小跳蛙
TA贡献1824条经验 获得超8个赞
@Angela_任性: 重启过了,我看了日志里面,分别出现了这个问题
【Message】The underlying provider failed on Open.
以及
在 System.Data.Entity.Core.EntityClient.EntityConnection.d__8.MoveNext()--- 引发异常的上一位置中堆栈跟踪的末尾 --- 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 System.Data.Entity.Core.Objects.ObjectContext.d__9.MoveNext()--- 引发异常的上一位置中堆栈跟踪的末尾 ---
然后后面还有一个 sa 登陆失败
- 19 回答
- 0 关注
- 1209 浏览
添加回答
举报
0/150
提交
取消