我正在编写处理资源的处理程序,当实现的IHttpHandler类在命名空间下编写时,我遇到了一个问题。
请找到代码
不工作情况
Web.config:
<add name="ResourceHandler" type="PublicSite.Classes.Handlers.ResourceEndpoint, PublicSite" path="Resource.ashx" verb="*" />
财产:PublicSite.Classes.Handlers.ResourceEndpoint.IsReusable=False
问题:命中构造函数并且未调用ProcessRequest。构造类的对象,即。,构造函数被命中,但在调用processrequest之前失败了404。
工作情景
Web.config:
<add name="ResourceHandler" type="ResourceEndpoint,PublicSite" path="Resource.ashx" verb="*" />
课程:PublicSite.Classes.Handlers.ResourceEndpoint.IsReusable=True
在调用processrequest之前,构造函数被404命中并失败。
第二次当我们请求处理程序时,它立即使用构造的对象,因此不会调用construcotr并直接调用ProcessRequest。顺便说一句,在第二次调用中,处理程序正在运行。
我不需要可重复使用的属性。 有人可以帮我找到问题。感谢。
答案 0 :(得分:1)
您能否向我确认您的web.config和处理程序本身如下所示? (这是来自IIS 7.5下托管的项目)
web.config: -
google.maps.event.addListener(map, 'click', function(event) {
placeMarker(event.latLng);
});
function placeMarker(location) {
var marker = new google.maps.Marker({
position: location,
map: map
});
}
HttpHandler: -
<system.webServer>
<handlers>
<add name="customerHandler"
preCondition="integratedMode"
verb="*"
path="customerHandler.ashx"
type="GlassCMS.HttpHandlers.CustomerHandler, GlassCMS"/>
.
.
.
</handlers>
</system.webServer>
如果您愿意,我也可以包含JavaScript(或者您可以在此处发布)。上面的例子来自工作代码。