0

我正在 asp.net 中开发一个需要存储用户配置文件图像的 Intranet webapp。

@edit:webapp 应该同时在两个不同的 web 服务器上运行。

我的问题是,最好的方法是什么?使用配置文件保存照片(我正在使用 SqlProfileProvider)或将其上传到文件系统并将链接保存在配置文件中?

我了解一种操作与另一种操作的性能差异,但我的 Intranet 将被数百个用户使用,我非常喜欢将所有数据存储到一个地方(例如,使备份数据更容易)。

假设我将数据存储到数据库中,还有另外两个问题:

a) 我应该使用什么类型来保存照片?字节[]???

b)我应该创建一个处理程序来显示图像,还是有更简单的方法?

4

3 回答 3

2

考虑数据库存储的唯一原因是在网络农场场景中。如果您只有一台 Web 服务器,则使用文件系统会更快、更容易,只需将图像路径存储在配置文件中即可。

于 2009-09-01T08:24:43.877 回答
1

我目前正在我的数据库中使用 Image 字段来存储图像,但是,查看附加到此文档的警告,我想我应该移至 VarBinary。

然后,我使用 HttpHandler 来根据请求提供图像(尽管我的站点的最新版本在图像控制器上也有一个 MVC 文件操作处理程序,它执行相同的操作)。

我的处理程序的一个例子可以在这个答案中看到:

如何知道请求了哪个图像。

于 2009-09-01T08:53:42.197 回答
0

无论如何,备份都应该包括您的网站文件夹,所以我认为使用文件系统和 IIS 来完成它的目的没有明显的优势——存储和提供文件。

为什么要费尽心思抽象文件系统,完成 IIS 和 MSSQL 之间的所有线路通信、代码开销等,只是为了避免备份文件夹?

于 2009-09-01T08:14:22.730 回答