Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 临时存储文件直到文件使用完毕的最佳方法_C#_Asp.net - Fatal编程技术网

C# 临时存储文件直到文件使用完毕的最佳方法

C# 临时存储文件直到文件使用完毕的最佳方法,c#,asp.net,C#,Asp.net,我们都知道,使用文件上载控件无法获取文件的完整路径,我们将通过创建文件夹并获取文件夹路径,遵循将文件保存到应用程序的过程,如下所示 Server.MapPath 但是我有一个选择1200excel文件的场景,而不是一次。我将选择每个excel文件,从该excel中读取所需内容,并将信息保存到数据库中。执行此操作时,我通过创建文件夹Excel将文件保存到应用程序文件夹中。由于我有1200文件,因此每次运行后,所有这些文件都将保存在此文件夹中 这是正确的方法吗我不知道 我正在寻找替代解决方案,而不是

我们都知道,使用
文件上载
控件无法获取文件的完整路径,我们将通过创建文件夹并获取文件夹路径,遵循将文件保存到应用程序的过程,如下所示

Server.MapPath

但是我有一个选择
1200
excel文件的场景,而不是一次。我将选择每个
excel
文件,从该
excel
中读取所需内容,并将信息保存到
数据库中。执行此操作时,我通过创建文件夹
Excel
文件保存到
应用程序文件夹中。由于我有
1200
文件,因此每次运行后,所有这些文件都将保存在此文件夹中

这是正确的方法吗我不知道

我正在寻找替代解决方案,而不是将文件保存到文件夹。我想暂时保存文件的完整路径,直到进程执行为止


因此,任何人都可以根据我的要求告诉我最好的方法。

Grrbrr404是正确的。您完全可以从
FileUpload.PostedFile
中获取
字节[]
,并将其直接保存到数据库,而无需使用中间文件夹。您可以将扩展名为的文件名存储在一个单独的列中,这样您就知道以后如何流式处理它,以备需要

关于将这些东西存储在数据库本身或文件系统上是好是坏的争论非常激烈。我认为这两种方法都不是最好的;你必须考虑你的资源和你的特殊情况,做出适当的决定。在这里或谷歌搜索“在数据库或文件系统上存储图像”,你就会明白我的意思


例如,请参见。

Grrbrr404是正确的。您完全可以从
FileUpload.PostedFile
中获取
字节[]
,并将其直接保存到数据库,而无需使用中间文件夹。您可以将扩展名为的文件名存储在一个单独的列中,这样您就知道以后如何流式处理它,以备需要

关于将这些东西存储在数据库本身或文件系统上是好是坏的争论非常激烈。我认为这两种方法都不是最好的;你必须考虑你的资源和你的特殊情况,做出适当的决定。在这里或谷歌搜索“在数据库或文件系统上存储图像”,你就会明白我的意思


例如,请参阅。

我认为您当前的方法没有问题。我没有说我有问题,我正在寻找其他解决方案(如果有)。您的意思是您当前将文件复制到应用程序/Excel文件夹中吗?你不需要我不想把文件保存到数据库
Grrbrr404
是的,当前正在将文件保存到
应用程序文件夹中,我不想这样,我是说,如果要实现您的想法,我看不出有任何问题。这意味着您可以在可以的时候进行操作,然后在以后进行优化。在我看来,最好将上传的文件拷贝到服务器上(作为服务器在接受文件上传时没有发出booboo的证据),然后再进行处理。如果它是用户上传的,它也将有助于解决您的处理代码是否有错误或它是文件上传部分。它还将作为您的证据,证明用户上传了无效的excel文件,这将免除您的责任。我认为您当前的方法没有问题。我没有说我有问题,我正在寻找其他解决方案(如果有的话)。您的意思是您目前正在将文件复制到应用程序/excel文件夹中吗?你不需要我不想把文件保存到数据库
Grrbrr404
是的,当前正在将文件保存到
应用程序文件夹中,我不想这样,我是说,如果要实现您的想法,我看不出有任何问题。这意味着您可以在可以的时候进行操作,然后在以后进行优化。在我看来,最好将上传的文件拷贝到服务器上(作为服务器在接受文件上传时没有发出booboo的证据),然后再进行处理。如果它是用户上传的,它也将有助于解决您的处理代码是否有错误或它是文件上传部分。它还将作为你的证据,证明用户上传了一个无效的excel文件,这将免除你的责任。