由于某种原因,我搞乱了“简约”ASP.Net只是为了好玩。我禁用了很多东西,并试图重新实现。我无法弄清楚的一件事是如何渲染一个ASP.Net页面(aspx)。如何从Global.asax呈现asp.net WebForm页面?
这是迄今为止我的进步:
//global.asax
protected virtual void Application_BeginRequest (Object sender, EventArgs e)
{
HtmlTextWriter writer=new HtmlTextWriter(Response.Output);
if(Request.Url.AbsolutePath.Substring(0,Math.Min(Request.Url.AbsolutePath.Length,8))=="/static/"){
return; //let it just serve the static files
}else if(Request.Url.AbsolutePath=="/test1"){
test1 o=new test1();
o.ProcessRequest(Context);
o.RenderControl(writer);
writer.Flush();
writer.Close();
Response.Flush();
// Response.Write(writer.ToString());
}else{
Response.ContentType="text/plain";
Response.Write("Hi world!");
}
CompleteRequest();
}
的/静态/ bit作为,那么 “喜世”。尽管如此,我无法获得/test1
的路线。它达到了这一点,但所有显示的是黑色页面。
我有这个设计内容的test1.aspx页:
<%@ Page Language="C#" Inherits="namespace.test1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>test1</title>
</head>
<body>
<form id="form1"> <!--just testing if two forms works and such-->
</form>
<form id="form2">
<input type="text" id="test1" />
</form>
</body>
</html>
,它几乎没有后面的代码(只是这不要紧,一个空函数)
我在做什么错这里?
是它们是正确的Request和Response对象,它们就像内置到在Global.asax类 – Earlz 2010-12-04 18:34:32