ASP.NET 编译时报错:无法创建新的堆栈防护页面

您所在的位置:网站首页 解决无法创建新的堆栈 ASP.NET 编译时报错:无法创建新的堆栈防护页面

ASP.NET 编译时报错:无法创建新的堆栈防护页面

2024-07-12 20:05| 来源: 网络整理| 查看: 265

最近发现一个奇怪现像: 如果在Visual Studio里生成网站,则VS直接退出。 如果用命令行编译或者在网页里直接运行,则报异常:“无法创建新的堆栈防护页面”。

原因应该是函数反复递归调用导致堆栈溢出,但此时并没有执行到自己的程序,还仅是编译,为什么会报这个错呢?

又分析了一下,发现是在一个自定义控件里,同时定义了两个属性: key 和 Key 。 原因是为了保持调用方的兼容,其实里面的内容是一样的。 public string Key {get{ return key; }}

后来删除了其中一个属性 Key,就好了。具体的原因也不太清楚。可能是 ASP.NET 的运行时不区分大小写吧,把这两个变量当成了一个,结果成了递归调用。

教训就是在asp.net里不要使用仅大小写不同的变量。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3