对于最近的一个项目,我们正在尝试在C#Umbraco中创建一个可下载的文件,但我似乎无法让它工作。对于下载我正在使用System.Web.HttpContext.Current.Response。在Umbraco CMS中按下按钮后调用该函数。该函数被调用,但不响应下载。该函数在继承自System.Web.Http.ApiController。
的类中实现我知道这个问题与其他一些问题相符,但我尝试了不同的解决方案,我觉得我忽视了一些问题。
源代码:
Foo<float> foo(newfunction);
float result = foo.bar();
答案 0 :(得分:0)
您将方法设置为void,它应该返回结果
public ActionResult Add(FeedbackRequest feedback)
{
string filepath = "some filepath";
byte[] filedata = File.ReadAllBytes(filepath);
string contentType = MimeMapping.GetMimeMapping(filepath);
var contentInfo = new System.Net.Mime.ContentDisposition
{
FileName = "download filename",
Inline = false,//ask browser for download prompt
};
Response.AppendHeader("Content-Disposition", contentInfo.ToString());
return File(filedata, contentType);
}
答案 1 :(得分:0)
问题是我的js。我有:
$http.get('/someurl/Export').
success(function (data) {
//console.log(data);
$scope.importOutput = data;
});
修复是:
window.open('/someurl/Export', '_blank');
感谢所有答案。我认为js很好,因为它正在处理呼叫,但似乎不是。