Viết một lớp kế thừa từ IHttpHandler
. Định nghĩa giao diện là:
public interface IHttpHandler
{
void ProcessRequest(HttpContext context);
bool IsReusable { get; }
}
HttpContext
là tất cả những gì bạn cần để thực hiện một ứng dụng. Nó hoạt động như một mặt tiền cho mọi thứ liên quan đến sự tương tác. Thuộc tính Server
cung cấp cho bạn thông tin về máy chủ. Thuộc tính Request
cung cấp cho bạn thông tin về HttpRequest và thuộc tính Response
cung cấp phương tiện để hiển thị đầu ra cho máy khách.
Đề xuất của tôi là sử dụng Reflector trên HttpContext và nhận được cảm nhận về nội dung chứa trong đó và cách hoạt động của mỗi thành phần.
Dưới đây là một ứng dụng ví dụ cơ bản:
public class HelloWorldHandler: IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.Write("Hello World");
context.Response.End();
}
public bool IsReusable
{
get { return false; }
}
}
Global.asax
không nhất thiết phải chứa bất cứ điều gì. Nó có lẽ là thực hành tốt hơn để xử lý các sự kiện toàn cầu bằng cách sử dụng một lớp có nguồn gốc từ IHttpModule
.
web.config phải được xử lý khác nhau tùy thuộc vào việc bạn đang sử dụng IIS 7 hay cái gì khác. Dù bằng cách nào, có một phần HttpHandler, nơi bạn phải đăng ký xử lý tùy chỉnh của bạn để xử lý tất cả các yêu cầu.
Bạn có thể đặt web.config rất tối thiểu, nhưng số lượng phần cấu hình được bao gồm tùy thuộc vào tính năng bạn muốn. Ngoài ra, một số thứ được xử lý bởi web.config có thể được quản lý trực tiếp với IIS. Xem http://msdn.microsoft.com/en-us/library/b5ysx397(v=VS.85).aspx để biết thêm về điều này.
Tôi hy vọng điều này sẽ hữu ích. Chúng tôi có thể cung cấp cho bạn thông tin tốt hơn nếu bạn cụ thể hơn với những gì bạn đang tìm kiếm.
tôi đề nghị bạn sử dụng [Reflector] (http://www.red-gate.com/products/ reflector/index.htm) để tìm hiểu. –
@ John vấn đề là có quá nhiều thứ để xem xét. Tôi có nghĩa là chỉ cần đếm bao nhiêu tham chiếu lắp ráp là trong một web.config tiêu chuẩn – Earlz