博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP.NET的一次奇遇:UserControl写成Control引发的w3wp进程崩溃
阅读量:5813 次
发布时间:2019-06-18

本文共 1544 字,大约阅读时间需要 5 分钟。

 昨天在写代码中一不小心将UserControl写成了Control,将原来应该继承自System.Web.UI.UserControl的用户控件,比如下面的BlogStats:

<%@ Control Language="c#" Inherits="CNBlogs.Web.BlogStats" %>
public class BlogStats : UserControl{    protected override void OnLoad(EventArgs e)    {        base.OnLoad(e);      }}

变成了继承自System.Web.UI.Control:

public class BlogStats : Control{    protected override void OnLoad(EventArgs e)    {        base.OnLoad(e);      }}

由于UserControl与Control本身就存在着继承关系(UserControl->TemplateControl->Control),所以编译不会有任何错误。

但是在运行时,访问站点竟然出现503错误。

Service Unavailable

HTTP Error 503. The service is unavailable.

打开IIS管理工具一看,应用程序池自动停止运行了。

然后打开Windows事件日志,发现了下面的错误日志:

Faulting application name: w3wp.exe, version: 8.0.9200.16384, time stamp: 0x50108835 Faulting module name: KERNELBASE.dll, version: 6.2.9200.16864, time stamp: 0x531d34d8 Exception code: 0xe0434352 Fault offset: 0x0000000000047b8c Faulting process id: 0xc9c Faulting application start time: 0x01cf985d408fdb6b Faulting application path: c:\windows\system32\inetsrv\w3wp.exe Faulting module path: C:\Windows\system32\KERNELBASE.dll Report Id: 85f21051-0450-11e4-9407-c2c3c27bfd35 Faulting package full name: Faulting package-relative application ID:

原来是w3wp进程崩溃了。

实在想不明白,UserControl与Control存着着继承关系,为什么将UserControl写成Control会造成如此严重的后果,难道与ASP.NET用户控件的动态编译机制有关?

期待有经验的朋友帮忙解惑一下。

【附】

BlogStats.ascx的代码:

<%@ Control Language="c#" Inherits="CNBlogs.Web.BlogStats" %>
随笔 -
, 文章 -
, 评论 -
, 引用 -

转载于:https://www.cnblogs.com/dudu/p/usercontrol_w3wp_crash.html

你可能感兴趣的文章
通过vb.net 和NPOI实现对excel的读操作
查看>>
TCP segmentation offload
查看>>
java数据类型
查看>>
数据结构——串的朴素模式和KMP匹配算法
查看>>
FreeMarker-Built-ins for strings
查看>>
验证DataGridView控件的数据输入
查看>>
POJ1033
查看>>
argparse - 命令行选项与参数解析(转)
查看>>
一维数组
查看>>
Linux学习笔记之三
查看>>
CentOS 6.6 FTP install
查看>>
图解Ajax工作原理
查看>>
oracle导入导出小记
查看>>
聊一聊log4j2配置文件log4j2.xml
查看>>
NeHe OpenGL教程 第七课:光照和键盘
查看>>
修改上一篇文章的node.js代码,支持默认页及支持中文
查看>>
Php实现版本比较接口
查看>>
删除设备和驱动器中软件图标
查看>>
第四章 TCP粘包/拆包问题的解决之道---4.1---
查看>>
html语言
查看>>