0

c# で http モジュールを使用して IP 範囲をブロックする方法。私は簡単な解決策を持っていますが、それは単一のIP用であり、IPがそのファイルにある場合はブロックされるように、httpモジュールのxmlファイルからIPを読み取るにはどうすればよいですか.Hereが私のコードです

public class MyHandler :IHttpModule
{
 public MyHandler(){}

    public bool IsReusable
    {
        get { return false; }
    }

    public void Init(HttpApplication context)
    {
        context.BeginRequest += new EventHandler(Application_BeginRequest);
    }
    private void Application_BeginRequest(object source, EventArgs e)
    {
        HttpContext context = (source as HttpApplication).Context;
        List<string> BlackListIp = new List<string>();
        BlackListIp.Add("127.0.0.1");

        if (BlackListIp.Contains(context.Request.UserHostAddress))
        {
            context.Response.Write("<h1 style='color:red;'>Your IP is Blocked</h1>");
        }
    }

    public void Dispose()
    {
    }
}
4

1 に答える 1

0

app_data フォルダー内に xml ファイルを追加し、XDocument を使用して読み取るだけです。FileDependency で Cache をイベント使用して、パフォーマンスを向上させることができます。

于 2012-04-27T23:41:51.157 に答える