2011-05-11 56 views
0

我目前使用自定義的IHttpHandler類來解析請求併發迴響應。使用任何global.asax方法還有什麼好處?Global.asax vs IhttpHandler for webservice?

+0

之間的區別 - 它甚至不是一個類。 。 。 – 2011-05-11 22:16:03

+0

我正在查看BeginRequest方法。 – chobo 2011-05-11 22:41:59

+0

你想通過使用Global.asax來實現什麼? – 2011-05-12 10:45:07

回答

1

如果你的意思是HttpApplication events vs IHttpHandler,它們並沒有真正的可比性。

通常從IHttpModule開始使用HttpApplication事件來處理(原則上)所有HTTP請求的交叉問題。

This question解釋了Global.asax的方法的IHttpModule和IHttpHandler的

+0

相當不錯的文章,但我仍然不完全明白,如果將我的Web服務的某些方面放在httpmodule中有任何優勢。我在考慮性能。 – chobo 2011-05-12 16:05:56

+0

@chobo:表演在這裏沒有什麼可做的。這就像詢問使用錘子還是螺絲刀是否更快:它們是針對不同事物的不同工具。 – 2011-05-12 16:21:55

3

你究竟想要做什麼?

IHttpHandler對於何時需要精確控制HTTP請求/響應非常有用,但通常這是在您開發框架的時候 - 大部分時間可以在其他地方實現同樣的功能。

IHttpHandler肯定不是通常用於Web服務,因此您應該使用WCF或使用ASP.Net web services(如果您的目標是WCF不可用的.Net 2.0框架)進行調查。使用專用的Web服務工具集將使得以一致的方式公開您的服務變得更容易(通過SOAP,JSON等...)

我不太確定global.asax如何進入它 - global.asax是,嗯... global。您在此處執行的任何操作都將適用於整個Web應用程序,因此,您在此處執行的任何請求處理都將適用於所有請求。這不是你應該實施web服務的地方。

+0

我最初嘗試過使用WCF,但它太多的學習曲線使它與POST的XML請求一起工作,所以我使用了一個處理程序。我在帖子中得到的是,對於Web服務的某些部分使用global.asax(或httpmodules)是否有任何性能優勢,如自定義驗證和檢查請求源?它有什麼區別? – chobo 2011-05-12 16:08:07