【发布时间】:2012-05-01 05:09:50
【问题描述】:
好吧,我知道应该调用它的是 IIS。反正;我有一个 Sharepoint 解决方案,当在文档库上单击具有特定扩展名的文件时,它应该返回一个特殊字符串。
在相应的 web.config 文件中,我有以下内容来运行这个 HTTP 处理程序:
<system.webServer>
<handlers>
...
<add name="MyFileHandler" path="*.bar" verb="*" type="Foo.Example.MyHandler, Foo.Example, Version=1.0.0.0, Culture=neutral, PublicKeyToken=3b53a24010893ac2" resourceType="File" />
...
</handlers>
</system.webServer>
而 HttpHandler 类是这样的:
namespace Foo.Example
{
public class MyHandler : IHttpHandler
{
public MyHandler(){} //For breakpoint
public void ProcessRequest(HttpContext context)
{
//Do stuff and write to response.
}
public bool IsReusable
{
get { return false; }
}
}
}
当我尝试在 Sharepoint 上打开带有“.bar”扩展名的文件时,它返回 404。我在 ProcessRequest 中所做的事情不相关,因为当我调试处理程序时,我可以看到调用了处理程序的构造函数,但没有调用'处理请求'。除了调试器,我还添加了调试行(File.AppendAll),再次根据调试输出调用构造函数。
IIS 7.5.7600
Sharepoint 2010 基金会
【问题讨论】:
标签: c# sharepoint iis-7.5 httphandler