c# - 更改 HttpPostedFileBase.SaveAs 目标目录

标签 c# asp.net asp.net-mvc c#-4.0 io

我想将上传的文件保存在项目目录之外。当我使用 HttpPostedFileBase.SaveAs(path) 时,文件目标将位于服务器的目录中。

例如:

HttpPostedFileBase fileurl = null;

foreach (string file in Request.Files)
{
    fileurl = Request.Files[file];
}

string extension = Path.GetExtension(fileurl.FileName);
if (extension == ".zip" || extension == ".rar")
{
    if (fileurl != null && fileurl.ContentLength > 0)
    {
        var fileName = Path.GetFileName(fileurl.FileName);
        var path = AppDomain.CurrentDomain.BaseDirectory + fileName;
        fileurl.SaveAs(path); 

路径始终位于项目目录中。

我想将上传的目录保存在我想要的任何地方。我怎样才能改变代码来做到这一点?

最佳答案

您在编写时将其设置为服务器的目录:

     var path = AppDomain.CurrentDomain.BaseDirectory + fileName;

使用

 AppDomain.CurrentDomain.BaseDirectory

指向当前域的目录。

关于c# - 更改 HttpPostedFileBase.SaveAs 目标目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16831484/

相关文章:

c# - 无法检索到 Sentry 页面的任何消息

c# - 我应该有单独的输入和输出对象吗?这个模式有名称吗?

asp.net Web 表单国际化

c# - 在 IIS8 中部署时缓存不起作用

asp.net-mvc - 每个页面上的 asp.net MVC 谷歌分析

c# - Unity Compute Shaders顶点索引错误

c# - 当两个方法在替换类型参数后具有相同的签名时,错误的重载将被覆盖

c# - 当应用程序位于远程计算机上时,异常未定义

c# - TransactionScope 是否适用于不同的 Context 对象

javascript - 在 C# cshtml View 中显示元组列表