标签: httphandler

System.MissingMethodException:找不到方法?

什么曾经在我的asp.net webforms应用程序中工作现在抛出此错误:

System.MissingMethodException:找不到方法

DoThis方法在同一个类上,它应该工作.

我有一个通用的处理程序:

public class MyHandler: IHttpHandler
{
    public void Processrequest(HttpContext context)
    {
      // throws error now System.MissingMethodException: Method not found?
      this.DoThis(); 
    }

    public void DoThis()
    {
    //
    }
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net dll httphandler nuget

226
推荐指数
8
解决办法
25万
查看次数

HTTP处理程序与HTTP模块

有人能用不到2句话解释两者之间的区别吗?是的,我知道谷歌可以提供数百个答案但不是一个2个明确的句子:)

asp.net httphandler httpmodule

140
推荐指数
5
解决办法
7万
查看次数

bool IsReusable在http处理程序接口中的意义

在编写http处理程序/模块时,有一个实现的接口成员叫做bool IsReusable.

这个成员有什么意义?如果我将其设置为false(或true),这对于其他Web应用程序意味着什么?

asp.net httphandler ihttphandler

128
推荐指数
2
解决办法
2万
查看次数

IHttpHandler vs IHttpModule

我的问题很简单(虽然答案很可能不是):我正在尝试决定如何在C#/ ASP.NET中实现服务器端上传处理程序.

我已经使用了HttpModules(IHttpModule接口)和HttpHandlers(IHttpHandler接口),我发现我可以使用这两种机制来实现它.我也想到,我不明白两者之间的差异.

所以我的问题是: 在什么情况下我会选择使用IHttpHandler而不是IHttpModule(反之亦然)?

一个人在管道中执行得更高吗?在某些情况下更容易配置吗?一个人不适合中等安全性吗?

c# asp.net iis httphandler httpmodule

79
推荐指数
5
解决办法
2万
查看次数

什么是ASP.NET中的HttpHandler

ASP.NET中的HttpHandler是什么?为什么以及如何使用它?

asp.net httphandler ihttpasynchandler ihttphandler

66
推荐指数
2
解决办法
10万
查看次数

如何在HttpHandler中使用ASP.NET会话状态?

我有一个在客户端页面(跨域,而不是我们的IIS服务器等)上运行的HttpHandler,当他们点击我们的嵌入式链接时,它会触发我们服务器上的Handler.到目前为止一切正常.

我现在正在尝试使用System.Web.HttpContext.Session对象,但它为null.我认为它是null,因为我们在调用HttpHandler之前没有会话?多次调用处理程序会在每次调用时创建一个新会话?如果是这种情况,MS只是在调用HttpHandler时禁用了Session对象吗?谁能证实这一点?

如果是这种情况,您如何维持呼叫之间的状态?某种基于SQL的数据对象?一份文件?

TIA

httphandler session-state

56
推荐指数
3
解决办法
3万
查看次数

利用IIS中的浏览器缓存(google pagespeed issue)

关于利用浏览器缓存有几个问题,但我没有找到任何有助于在ASP.NET应用程序中执行此操作的内容.谷歌的Pagespeed告诉这是性能最大的问题.到目前为止,我在我的web.config中这样做了:

<system.webServer>
  <staticContent>
    <!--<clientCache cacheControlMode="UseExpires"
            httpExpires="Fri, 24 Jan 2014 03:14:07 GMT" /> -->
    <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="7.24:00:00" />
  </staticContent>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

评论代码有效.我可以将expire header设置为将来某个特定时间,但我无法设置cacheControlMaxAge从现在开始静态内容的缓存天数.这是行不通的.我的问题是:

我怎样才能做到这一点?我知道有可能只为特定的文件夹设置缓存,这是一个很好的解决方案,但它也不起作用.应用程序托管在Windows Server 2012上,在IIS8上,应用程序池设置为经典.

在web配置中设置此代码后,我的页面速度为72(之前为71).没有缓存50个文件.(现在49)我想知道为什么,我只是意识到一个文件实际上是缓存的(svg文件).不幸的是png和jpg文件没有.这是我的web.config

<?xml version="1.0" encoding="utf-8"?>

<configuration>
  <configSections>
    <section name="exceptionManagement" type="Microsoft.ApplicationBlocks.ExceptionManagement.ExceptionManagerSectionHandler,Microsoft.ApplicationBlocks.ExceptionManagement" />
    <section name="jsonSerialization"     type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions,   Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E34" requirePermission="false" allowDefinition="Everywhere" />
    <sectionGroup name="elmah">
      <section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah"    />
      <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah"    />
      <section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
      <section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
    </sectionGroup>
  </configSections>

  <exceptionManagement mode="off">
    <publisher …
Run Code Online (Sandbox Code Playgroud)

c# asp.net iis caching httphandler

50
推荐指数
3
解决办法
5万
查看次数

URL路由,图像处理程序和"潜在危险的Request.Path值"

我已经在很长一段时间内遇到过这个问题,并且已经决定尝试通过在这里发布问题来一劳永逸地找到它的底部.我在这里的.net 4网站上有一个图像处理程序:

https://www.amadeupurl.co.uk/ImageHandler.ashx?i=3604 (为隐私而删除了实际域名)

现在这个工作正常,并且没有问题地从Web服务器提供图像,我说没有问题,因为如果我访问URL它工作正常,图像加载,没有生成异常.但是,昨天有人确实访问了这个确切的网址,并提出了以下几条例外:

Exception Generated
Error Message:
A potentially dangerous Request.Path value was detected from the client (?).
Stack Trace:
at System.Web.HttpRequest.ValidateInputIfRequiredByConfig() at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)

Technical Information:
DATE/TIME: 23/01/2013 03:50:01
PAGE: www.amadeupurl.co.uk/ImageHandler.ashx?i=3604
Run Code Online (Sandbox Code Playgroud)

我理解错误信息,这不是问题我只是不明白为什么它在这里生成,使事情变得更糟我无法复制它,就像我说我点击链接图像加载,没有例外.我正在使用URL路由并注册要忽略的处理程序,以防这导致以下代码出现问题:

routes.Ignore("{resource}.ashx")
Run Code Online (Sandbox Code Playgroud)

我不知道为什么我会收到错误或者还有什么可以尝试.

.net vb.net asp.net web-config httphandler

41
推荐指数
1
解决办法
9万
查看次数

使用Plupload与ASP.NET/C#

UPDATE

我能够让一切正常工作,我只想回复更新的代码.我使用了Darin Dimitrov关于使用单独的通用http处理程序来处理文件上传的建议,所以这就是我提出的代码...如果您有疑问,请告诉我.

<%@ WebHandler Language="C#" Class="Upload" %>

using System;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Net;
using System.Web;

public class Upload : IHttpHandler {

    public void ProcessRequest(HttpContext context) {

        /**
         * If 'newTicket' is "false", then the directory to upload to already exists and we can extract it from
         * the 'ticketID' POST parameter.
         * 
         * If 'newTicket' is "true", then this is a new Ticket submission so we need to work with a NEW directory …
Run Code Online (Sandbox Code Playgroud)

c# asp.net httphandler jquery-plugins plupload

39
推荐指数
2
解决办法
3万
查看次数

问题映射HttpHandler - >找不到HTTP错误404

我在尝试在web.config中映射HttpHandler时遇到问题.

这是相关的配置位:

<httpHandlers>
  <add verb="*" path="*.hndlr" type="MyAssembly.MyHandler, MyAssembly" validate="false" />
</httpHandlers>
Run Code Online (Sandbox Code Playgroud)

当我导航到http://localhost/myApp/whatever.hndlr我收到服务器错误404(未找到).

这是我第一次联系HttpHandler,所以我可能会遗漏一些东西 - 任何帮助表示感谢!

更新:

到目前为止,我设法使用这两个答案让它工作 - 谁能够挖掘它的工作原理得到答案标记!

这是我的配置(如果不同时配置将不起作用 - 我在经典模式下运行IIS7)

System.Web程序:

<httpHandlers>
    <add verb="*" path="*MyHandler.hndlr" type="MyAssembly.MyAssemblyHandler, MyAssembly" validate="false"/>
</httpHandlers>
Run Code Online (Sandbox Code Playgroud)

System.webserver:

<handlers>
    <add name="MyHandler" verb="*" path="*MyHandler.hndlr" type="MyAssembly.MyAssemblyHandler, MyAssembly" validate="false" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="Script"/>
</handlers>
Run Code Online (Sandbox Code Playgroud)

asp.net configuration web-config httphandler

32
推荐指数
3
解决办法
4万
查看次数