首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WebClient未连接到IHttpHandler

WebClient未连接到IHttpHandler
EN

Stack Overflow用户
提问于 2009-11-23 23:32:57
回答 1查看 227关注 0票数 0

我根据为.NET Framework2制作的示例1编写了我的程序,但我将其转换为.NET Framework3.5。我应该如何修改这段代码才能使其正常工作?如何调试服务器端?当我手动向url插入参数时,服务器端似乎可以工作,所以问题一定出在客户端代码上。

代码语言:javascript
复制
private void UploadFile(string fileName, System.IO.Stream data)
{
    UriBuilder ub = new UriBuilder("http://localhost:59491/receiver.ashx");
    ub.Query = string.Format("filename={0}", fileName);

    WebClient c = new WebClient();
    c.OpenWriteCompleted += (sender, e) =>
    {
        PushData(data, e.Result);
        e.Result.Close();
        data.Close();
    };
    c.OpenWriteAsync(ub.Uri);
}

private void PushData(System.IO.Stream input, System.IO.Stream output)
{
    byte[] buffer = new byte[4096];
    int bytesRead;

    while ((bytesRead = input.Read(buffer, 0, buffer.Length)) != 0)
    {
        output.Write(buffer, 0, bytesRead);
    }
}

1 http://www.c-sharpcorner.com/UploadFile/nipuntomar/FileUploadsilverlight03182009030537AM/FileUploadsilverlight.aspx

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-11-23 23:54:10

我最初考虑的是端口说明符。在该示例中,他将请求URI专门设置为端口3840,但他从未显示过修改设置以强制web服务器在托管处理程序时使用该端口。确保请求URI使用的端口与从浏览器手动访问处理程序时使用的端口相同。

编辑:我想一定是这样的,我刚刚使用最新的框架在VS2008的一个新项目中重新创建了这个示例,一旦我正确地设置了端口,一切都会正常工作。

至于调试服务器,如果您在visual studio之外托管项目的服务器部分(如果您关注CSharpCorner示例中的那个人,就会这样),那么您应该已经在调试服务器组件了,只需在服务器代码中放置一个断点即可。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1783888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档