紧急求助:关于Remoting的文件传输问题

  现在有个项目中想用remoting实现下面这样一个功能:
  在server端有一个方法,要经过一系列复杂的运算后形成了一个比较大的文件(5M-20M)的二进制数据文件,然后再通过Remoting传输到client, 该如何实现?
  我现在是用下面的办法做的:
  在一个RemoteObject类中实现了这样的一个方法,由于通过Remoting无法返回FileStream等对象,所以只能返回byte数组,但这样的话,传输大文件时效率很差,一个7M的文件在100M网络环境下还要用20-30秒,而需求中要求对于10M数据将时间控制在5秒之内,有什么好办法么?谢谢!

public   byte [] ReadFile( string  filePath)
{
    FileInfo fileinfo 
=   new  FileInfo(filePath);
 
    BufferedStream inStream 
=   new  BufferedStream( new  FileStream(filePath, FileMode.Open));
    
byte  []buf  =   new   byte [fileinfo.Length];
    inStream.Read(buf, 
0 , ( int )fileinfo.Length);
 
    inStream.Close();
    
return  buf;
}

 

你可能感兴趣的:(文件传输)