首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在(asp.net + wcf) web应用程序中存储文件的最佳方法是什么

在(asp.net + wcf) web应用程序中存储文件的最佳方法是什么
EN

Stack Overflow用户
提问于 2010-07-29 17:12:41
回答 2查看 2.4K关注 0票数 4

我正在创建一个使用asp.net和WCF作为三层架构的web应用程序,它看起来很像一个社交网站。用户可以注册到系统,他们可以上传他们的个人资料图像,文档,视频剪辑等。那么,我想知道的是什么是最好的方式来存储这些文件?在wcf端还是web应用程序端?

我还想知道,如果我选择web应用程序端将这些文件存储为一组文件夹,它如何使这些文件夹共享并允许访问另一个不同的项目(例如,桌面客户端需要将文件上传到该共享文件夹)?

提前感谢大家。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-29 17:17:47

我认为这个问题最好这样来表达:

  • 将元数据保存在web应用程序中的文件夹中或附近,并将元数据存储在数据库中
  • 通过

从数据库中获取保存的图像

第二种方法可能会相当慢。通过服务抓取信息,对其进行转换,使用具有正确mime类型的httphandler将二进制流输出到浏览器...

大多数架构都简化为中间层:将图像保存在UI层附近,或保存在UI层中,并将有关图像的元数据存储在数据库中。这些信息的检索大多只是一堆很容易检索到的字符串。

新问题的更新:

由于winforms应用程序/其他项目不在您最初的问题中,因此偏离了一些新的问题。在这种情况下,您可以执行以下一些方案:

  • 使用WCF层作为公共基础,并存储该服务背后的图像。正如我所说的,这将是一个额外的字节数组。
  • 将图像存储在Web层中,并有一个服务(asmx或WCF one)将图像公开给您的winforms客户端。
  • 在运行web UI的服务器上为winforms客户端提供共享,以及图像所在的位置。当然,一定要尊重安全和可能的黑客攻击。

这取决于最常用的场景是什么。我的假设是web ui层将主要用于图像处理,而winforms将用于图像处理?如果是这样的话,也有ASP.NET第三方控件可用于此类操作,因此对winforms客户端的需求将会减少。

票数 2
EN

Stack Overflow用户

发布于 2010-07-29 17:21:31

这取决于你期望这个东西变得多大。

如果这是为了更广泛的互联网,并且您希望它变得更大,那么将其放在web服务器上将很难通过向您的网络场添加新的web服务器来扩展您的应用程序。

一种方法是将物理文件上载到the服务器,使用户可以快速上载,然后使用可能使用FileWatcher的上载触发协调器后台服务。此服务会将文件传播到web场中的所有节点,以便对其他节点的后续请求将找到该文件。

如果这是一个仅供公司内部使用的小型应用程序,则在web服务器上运行是可以的,但必须满足以下条件:

  • 你可以完全控制托管服务器,这样你就可以设置合适的文件夹,编写你的文件保存和检索代码,这样它就可以轻松地移动到较低的层。通过接口执行此操作,并注入implementation
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3360925

复制
相关文章

相似问题

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