无法建立与目标计算机的联系,无法建立连接,因为目标计算机主动拒绝它127.0.0.1:3446...

我使用的是WCF4.0模板-

REST。我正在尝试一种使用流上传文件的方法。

问题总是发生在

Stream serverStream = request.GetRequestStream();

流类:

namespace LogicClass

{

public class StreamClass : IStreamClass

{

public bool UploadFile(string filename, Stream fileStream)

{

try

{

FileStream fileToupload = new FileStream(filename, FileMode.Create);

byte[] bytearray = new byte[10000];

int bytesRead, totalBytesRead = 0;

do

{

bytesRead = fileStream.Read(bytearray, 0, bytearray.Length);

totalBytesRead += bytesRead;

} while (bytesRead > 0);

fileToupload.Write(bytearray, 0, bytearray.Length);

fileToupload.Close();

fileToupload.Dispose();

}

catch (Exception ex) { throw new Exception(ex.Message); }

return true;

}

}

}

REST项目:

[WebInvoke(UriTemplate = "AddStream/{filename}", Method = "POST", BodyStyle = WebMessageBodyStyle.Bare)]

public bool AddStream(string filename, System.IO.Stream fileStream)

{

LogicClass.FileComponent rest = new LogicClass.FileComponent();

return rest.AddStream(filename, fileStream);

}

Windows Form项目:用于测试

private void button24_Click(object sender, EventArgs e)

{

byte[] fileStream;

using (FileStream fs = new FileStream("E:\\stream.txt", FileMode.Open, FileAccess.Read, FileShare.Read))

{

fileStream = new byte[fs.Length];

fs.Read(fileStream, 0, (int)fs.Length);

fs.Close();

fs.Dispose();

}

string baseAddress = "http://localhost:3446/File/AddStream/stream.txt";

HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(baseAddress);

request.Method = "POST";

request.ContentType = "text/plain";

Stream serverStream = request.GetRequestStream();

serverStream.Write(fileStream, 0, fileStream.Length);

serverStream.Close();

using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)

{

int statusCode = (int)response.StatusCode;

StreamReader reader = new StreamReader(response.GetResponseStream());

}

}

我已关闭防火墙和Internet连接,但该错误仍然存​​在。有没有更好的测试上传方法的方法?

堆栈跟踪:

在System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure,Socket

s4,Socket s6,Socket&socket,IPAddress&地址,ConnectSocketState状态,IAsyncResult

asyncResult,Int32超时,例外和例外)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值