Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.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
Asp.net mvc 如何在mvc应用程序中设置运行时的保存位置_Asp.net Mvc_Asp.net Mvc 3_Web Applications_Export_Download - Fatal编程技术网

Asp.net mvc 如何在mvc应用程序中设置运行时的保存位置

Asp.net mvc 如何在mvc应用程序中设置运行时的保存位置,asp.net-mvc,asp.net-mvc-3,web-applications,export,download,Asp.net Mvc,Asp.net Mvc 3,Web Applications,Export,Download,我需要在mvc应用程序的运行时设置保存位置。在windows应用程序中,我们使用 System.Windows.Forms.SaveFileDialog() 但是,我们使用什么web应用程序?不清楚您要保存什么。在web应用程序中,您可以使用文件输入将文件上载到服务器: <input type="file" name="file" /> 该方法还有其他重载,允许您动态生成文件并将其作为流传递给客户端。但是,在web应用程序中,从服务器下载文件时需要了解的重要部分是内容配置头。它有两

我需要在mvc应用程序的运行时设置保存位置。在windows应用程序中,我们使用

System.Windows.Forms.SaveFileDialog()


但是,我们使用什么web应用程序?

不清楚您要保存什么。在web应用程序中,您可以使用文件输入将文件上载到服务器:

<input type="file" name="file" />
该方法还有其他重载,允许您动态生成文件并将其作为流传递给客户端。但是,在web应用程序中,从服务器下载文件时需要了解的重要部分是
内容配置
头。它有两个可能的值:
inline
attachment
。例如,使用上述代码,以下标题将添加到响应中:

Content-Type: text/plain
Content-Disposition: attachment; filename=foo.txt

... contents of the file ...
当浏览器从服务器收到此响应时,它将提示用户“另存为”对话框,允许用户选择计算机上存储下载文件的位置


更新:

以下是如何在web应用程序中实现类似功能:

public ActionResult Download()
{
    var file1 = File.ReadAllLines(Firstfilpath);
    var file2 = File.ReadAllLines(2ndfilpath);
    var mergedFile = string.Concat(file1, file2);
    return File(mergedFile, "text/plain", "result.txt");
}

达林,我的服务器端有两个文件。我需要合并这两个文件并保存单个文件。我需要手动获取用户位置的单个文件名。如何可能?只有单个文件可以流式传输到客户端。您可以将这两个文件压缩到一个ZIP文件中,然后将此ZIP文件返回给客户端。如果“合并”是指其他内容,请解释。例如,这些文件可能属于某种特殊类型,可以合并。但是首先你必须提供更多关于你的特定场景的细节。现在查看我的帖子。这是针对windows应用程序的。如何使用这个web应用程序?@user279,我已经更新了我的答案,提供了一个如何合并两个文本文件并将它们流式传输到客户端的示例。最后看我的更新。谢谢darin。但是导出文件名只能由客户端手动选择吗?
public ActionResult Download()
{
    var file1 = File.ReadAllLines(Firstfilpath);
    var file2 = File.ReadAllLines(2ndfilpath);
    var mergedFile = string.Concat(file1, file2);
    return File(mergedFile, "text/plain", "result.txt");
}