2016-12-07 83 views
0

我想下载一个xlsx扩展名文件作为一个httpresponsemessage被封装。该文件不会显示用于下载,但是铬合金中的XHR请求似乎包含数据。下载xlsx作为httpresponsemessage

public HttpResponseMessage GetExcelFile(string csvdata) 
{ 
     var result = new HttpResponseMessage(HttpStatusCode.OK); 

    System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding(); 
    MemoryStream memStream = new MemoryStream(encoding.GetBytes(csvdata)); 

     result.Content = new ByteArrayContent(encoding.GetBytes(csvdata)); 

     result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); 

     result.Content.Headers.ContentDisposition = new  ContentDispositionHeaderValue("attachment"); 

     result.Content.Headers.ContentDisposition.FileName = "Data.xlsx"; 

     return result; 

}

这是API调用抛出httpresponsemessage到angularjs UI。 任何建议,让这个工作?

+0

这是网页API获取方法? – Gurusinghe

回答

0

希望您正在使用Web API get方法在ValuesController.cs类中返回HttpResponseMessage。 (// GET: api/Values

假定ng按钮点击触发, 将ng-click="TakeIT()"添加为按钮元素中的属性。

在你的角度控制器,绑定功能$范围为,

$scope.TakeIT= function() {       
 
        window.location = 'api/Values'; 
 
       };

+0

没有它的POST。我继承了这个方法。我需要发送很多参数并查询才能获得结果。 – user2791094

相关问题