我正在使用fileContentResult将文件呈现给浏览器。它运行良好,除了当fileName包含国际字符时引发异常。 我记得在某个地方看到这个功能不支持国际字符,但我相信在应用程序需要在美国以外的国家上传文件时,必须有一种解决方法或人们遵循的最佳做法。FileContentResult和国际字符
有谁知道这种做法的呢?下面是ActionResult的方法提前
public ActionResult GetFile(byte[] value, string fileName)
{
string fileExtension = Path.GetExtension(fileName);
string contentType = GetContentType(fileExtension); //gets the content Type
return File(value, contentType, fileName);
}
感谢
苏珊
我知道,但我在几个网站上试过,并且它与瑞典字符很好地协作,所以必须有一个备用解决方案。例如,如果您将文件附加到Gmail并下载它,即使它具有国际字符,它仍然可以正常工作。我能想到的一件事是将文件直接附加到响应中,但是如何将它发送回MVC中的客户端? – suzi167 2009-07-16 19:58:50
您可以尝试反向设计Google如何执行此操作,并创建自己的从ActionResult派生的类,您可以在其中返回任何您想要的内容(受限于ASP.NET允许您执行的操作)。 – chris166 2009-07-17 05:18:15