PDA

View Full Version : سوال در موردHttpHandlers



javad3151
سه شنبه 25 بهمن 1384, 18:47 عصر
سلام
چطور میشه با استفاده از HttpHandlers , سیستم را طوری طراحی کرد که هر صفحه ای از سایت که اجرا شد یه کلاس خاص اجرا شود ( مثلا برای طراحی یک کانتر کامل, هر وقت از صفحه ای بازدید شد , اطلاعات مربوطه مثل نام صفحه و IP ، ذخیره شود)
اگر یک مثال ساده در این زمینه معرفی کنید ممنون میشم

Behrouz_Rad
سه شنبه 25 بهمن 1384, 22:11 عصر
البته دقیقا منظورون واضح نیست اما هر عملی رو که نیاز داشتید، می تونید به شکل یک HttpHandler پیاده سازی کنید.
نحوه پیکربندی HttpHandler در فایل Web.Config نیز به شکل زیر است:


<httpHandlers>
<add verb="*" path="*" type="myHandlerName,myHandlerName" />
</httpHandlers>

موفق باشید.

javad3151
چهارشنبه 26 بهمن 1384, 18:57 عصر
من مثال msdn رو به اینصورت پیاده کردم ولی جواب نداد:
یه کلاس ایجاد کردم:


Imports System.Web

Public Class HelloWorldHandler
Implements IHttpHandler

Public Sub ProcessRequest(ByVal context As System.Web.HttpContext) Implements System.Web.IHttpHandler.ProcessRequest
Dim request As HttpRequest = context.Request
Dim response As HttpResponse = context.Response
' A file named ending in .MyHello need not exist. This handler
' executes whenever a file ending in .MyHello is requested.
response.Write("<html>")
response.Write("<body>")
response.Write("<h1> Hello from Synchronous custom handler. </h1>")
response.Write("</body>")
response.Write("</html>")
End Sub

Public ReadOnly Property IsReusable() As Boolean Implements System.Web.IHttpHandler.IsReusable
Get
Return False
End Get
End Property

End Class

در وب کانفیگ هم اینطور تنظیم کردم


<httpHandlers>
<add verb="*" path="*"
type="HelloWorldHandler,httpruntime" />
</httpHandlers>

ولی جواب نمیده و خطا میگیره:
File or assembly name HelloWorldHandler, or one of its dependencies, was not found

titbasoft
پنج شنبه 27 بهمن 1384, 10:21 صبح
اسم پروژه تون رو (بهتر بگم اسم namespace ای که کلاس HelloWorldHandler توی اون قرار داره) جایگذین httpruntime در قسمت register کردن handler توی کنید

Behrouz_Rad
جمعه 28 بهمن 1384, 10:49 صبح
<httpHandlers>
<add verb="*" path="*" type="HelloWorldHandler,httpruntime" />
</httpHandlers>

رو به شکل زیر اصلاح کنید:


<httpHandlers>
<add verb="*" path="*" type="HelloWorldHandler,HelloWorldHandler" />
</httpHandlers>

موفق باشید.

javad3151
یک شنبه 30 بهمن 1384, 11:05 صبح
باز هم مشکل حل نشد هر دو روش را امتحان کردم !!!!!!!؟؟؟؟؟؟

Ehsan Rafsanjani
یک شنبه 10 اردیبهشت 1385, 21:10 عصر
با عرض احترام خدمت دوستان منم نتونستم مشکل رو حل کنم ؟
آیا باید برای استفاده از httphandler حتما باید فایل کلاسمون dll بشن؟؟؟