2014-11-24 75 views
0

我正在尝试为用户上传/下载文件开发一个文件管理系统。一个文件管理系统 - 使用asp.net mvc和wcf

该系统包括两个部分(机):

  1. Web服务器(asp.net的MVC):文件CRUD
  2. 文件服务器(WCF):使用Windows文件系统或NoSQL的存储文件。

使用时下载一个文件,这个过程是... http://i.imgur.com/SaBqQF6.png?1

文件已送两次!

我希望文件服务器直接发送文件回浏览器,但不知道该怎么做。

我的WCF服务合同是这样的:

interface FileService { 
    Stream Download(string filename); 
    void Upload(string filename, Stream file); 
} 

ASP.net MVC代码:

class FileController : Controller { 
    HttpResponseMessage Get(string filename) { 
    // call wcf service here, and return. 
    } 
} 

请建议,谢谢!


更新:

action通话两次......

我的意思是将文件发送两次:从文件服务器到网络服务器到浏览器

也许是我的程序的architeture问题, wcf服务不应该返回一个流?

+0

这不是WCF问题或WCF和ASP.NET之间的任何事情。我认为它与控制器中的执行“Action”有两次关系。 – Fka 2014-11-24 09:18:58

+0

对不起,我没有说清楚,我更新了我的帖子... – Duck 2014-11-24 10:24:01

回答