Hai ví dụ sau đây chứng minh làm thế nào để sử dụng lớp HttpApplication và các sự kiện của nó. Ví dụ đầu tiên cho thấy làm thế nào để tạo ra một mô-đun HTTP tùy chỉnh và kết nối một sự kiện vào nó. Ví dụ thứ hai chứng tỏ làm thế nào để sửa đổi các tập tin Web.config.
Ví dụ sau đây cho thấy làm thế nào để tạo ra một mô-đun HTTP tùy chỉnh và kết nối các sự kiện AcquireRequestState để module HTTP. Module HTTP chặn các yêu cầu tới tài nguyên ứng dụng Web, do đó cho phép bạn lọc các yêu cầu của khách hàng. Bất kỳ mô-đun HTTP gia vào một sự kiện HttpApplication phải thực hiện các giao diện IHttpModule.
C # VB
using System;
sử dụng System.Web;
Samples.AspNet.CS namespace
{
public class CustomHTTPModule: IHttpModule
{
CustomHTTPModule công cộng ()
{
// constructor Class.
}
// Lớp kế thừa IHttpModule
// phải thực hiện các Init và Vứt bỏ các phương pháp.
public void Init (HttpApplication ứng dụng)
{
app.AcquireRequestState + = new EventHandler (app_AcquireRequestState);
app.PostAcquireRequestState + = new EventHandler (app_PostAcquireRequestState);
}
public void Dispose ()
{
// Thêm mã để làm sạch các
// các biến thể hiện của một mô-đun.
}
// Định nghĩa một AcquireRequestState xử lý sự kiện tùy chỉnh.
public void app_AcquireRequestState (object o, EventArgs ea)
{
HttpApplication httpApp = (HttpApplication) o;
HttpContext ctx = HttpContext.Current;
ctx.Response.Write ( "thi AcquireRequestState");
}
. // Định nghĩa một tùy chỉnh PostAcquireRequestState xử lý sự kiện
public void app_PostAcquireRequestState (object o, EventArgs ea)
{
HttpApplication httpApp = (HttpApplication) o;
HttpContext ctx = HttpContext .Current;
ctx.Response.Write ( "thi PostAcquireRequestState");
}
}
}
Trước khi sự kiện trong một mô-đun HTTP tùy chỉnh có thể xảy ra, bạn phải thay đổi các thiết lập cấu hình trong file Web.config để thông báo cho ASP.NET về module HTTP . Ví dụ sau đây cho thấy các thiết lập cấu hình thích hợp trong phần httpModules của file Web.config. Các thiết lập sau đây áp dụng cho IIS 7.0 chế độ Classic và phiên bản trước của IIS.
C # VB
name = "CustomHttpModule" />
Các thiết lập sau đây áp dụng cho IIS 7.0 chế độ tích hợp.
C # VB
name = "CustomHttpModule" />
đang được dịch, vui lòng đợi..
