我創建一個IIS模塊,它在加載之前將文本附加到頁面上。當我轉到網址時,第一次加載頁面時效果很好。然而,在隨後的加載中,文本從不附加。IIS7模塊只能第一次運行?
有關如何解決這個問題的任何想法?
== == CODE
這裏是我的web.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<compilation debug="true" />
</system.web>
<system.webServer>
<modules>
<add name="MIModule" type="MI.MyModule, MI" />
</modules>
<caching enabled="false" enableKernelCache="false" />
</system.webServer>
</configuration>
一些模塊代碼:
public void context_PreRequestHandlerExecute(Object source, EventArgs e)
{
HttpApplication app = (HttpApplication)source;
HttpRequest request = app.Context.Request;
string pageContent = app.Response.Output.ToString();
string useragent = "HI!<br />" + pageContent + "<hr />" ;
try
{
_current.Response.Output.Write(useragent);
}
catch
{
}
}
和其他代碼:
private HttpContext _current = null;
#region IHttpModule Members
public void Dispose()
{
throw new Exception("Not implemented");
}
public void Init(HttpApplication context)
{
_current = context.Context;
context.PreRequestHandlerExecute += new EventHandler(context_PreRequestHandlerExecute);
}
#endregion
如果它在頁面之前加載,它聽起來更像是一個模塊,而不是一個處理程序。你可以發佈一些代碼嗎? – bottlenecked
@bottlenecked - 對不起,你是正確的,模塊不處理。我附上了一些代碼。 – Dexter