正常に動作している他のシステムで、.NET 2.0 で asp.net Web サイトを開発しました。システムにasp.net Webサイトをコピーして実行すると、実行時エラーが発生します。
オブジェクト参照がオブジェクト インスタンスに設定されていません。
public class FixURLs : IHttpModule
{
public FixURLs()
{
}
#region IHttpModule Members
public void Dispose()
{
// do nothing
}
public void Init(HttpApplication context)
{
context.BeginRequest += new EventHandler(context_BeginRequest);
context.CompleteRequest();
}
..... some other logic
次の行でオブジェクト参照エラーが発生しています。
context.CompleteRequest();
私の web.Config ファイルには
<compilation debug="true">
<assemblies>
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
</compilation>
この問題を解決するにはどうすればよいですか?
EDIT 編集 注新しいコードが追加されました
void context_BeginRequest(object sender, EventArgs e)
{
HttpApplication app = (HttpApplication)sender;
if (app.Request.RawUrl.ToLower().Contains("/bikes/default.aspx"))
{
app.Context.RewritePath("BikeInfo.aspx", "", "");
}
else if (app.Request.RawUrl.ToLower().Contains("/bikes/mountainbike.aspx"))
{
app.Context.RewritePath("BikeInfo.aspx", "", "ItemID=1");
}
}