2016-04-05 5 views
0

、ファイルをダウンロードしようとしています。その後、VB.Netは、だから私の問題はこれです、私は次のコードを持っているだけで、ファイルの内容を取得

<HttpGet> 
    Function downloadExtract(ByVal id As Integer, ByVal formatId As String) 
     Dim path = AppDomain.CurrentDomain.BaseDirectory + "/app_data/extracts/" + id.ToString + ".csv" 

     Dim file = New FileInfo(path) 

     If (file.Exists) Then 
      Response.ClearHeaders() 
      Response.ClearContent() 

      Response.AddHeader("Content-Disposition", String.Format("attachment; filename={0}", file.Name)) 

      Response.AddHeader("Content-Length", file.Length.ToString) 

      Response.ContentType = "application/x-download" 

      Response.TransmitFile(file.FullName) 

      Response.End() 
     Else 
      Return Nothing 
     End If 

    End Function 

が今まで私はこれを言うことができるように、ファイルを見つけるべきであるとし、存在する場合、いくつかの応答ヘッダーを設定し、ファイルをチャックします。

この完全に同じコードは、プロジェクトのどこかで上記を完璧に行い、私にはこのファイルをダウンロードさせてもらうことができますが、今はまったく何もしていないような問題があります。

私のブラウザでのdevコンソールの確認これを処理するコントローラへのAjaxリクエストが200を返し、すべてがうまくいきます。成功した要求と何もしない間に見ることができる唯一の違いは、成功した人は応答データを表示することはできないと言いますが、そこに座っているのは親指です。応答データはファイルの内容であり、なぜこれを行うのかわかりません。

私は一日の最高の部分のためにこれに私の髪を裂いてきた今、どんな助けも大いに感謝されるでしょう!

私はDEVコンソールのカップルより多くの違いを気づいた掲示以来

仕事が言う一つのタイプ:ドキュメントとイニシエータ:その他

ないものが言うタイプ:XHRとイニシエータ:jqueryの - 1.9.1.js:8526

関連の関数を呼び出すJSファイル内のコードは次のとおりです。

ワーキング:

self.getExtract = function (outputId) { 
     $.ajax({ 
      url: window.location + "/DownloadExtract", 
      data: {id: outputId} 
     }); 
}; 

に動作していない:

self.downloadFile = function (id) { 
    $.ajax({ 
     url: window.location + "/downloadExtract", 
     data: {id: self.extractId, formatId: self.format} 
    }); 
}; 

そして、それはvbhtmlファイル内のリンクがあるに違います場合:

ワーキング:

<td><a href="/ListExtracts/DownloadExtract?id={{extract.id}}">Download</a></td> 

動作しない:

<a target="_self" href="" ng-click="runExtract.downloadFile()"><i class="icon-download"> Download Extract</i> 

答えて

0

私は上記のことがJavascriptで撮影するのではなく、実際にはハイパーリンクからコントローラにまっすぐ行くことに気づいていなかった。変更

<a target="_self" href="/RunExtract/downloadExtract?id={{runExtract.extractId}}&formatId={{runExtract.format}}"><i class="icon-download"> Download Extract</i></a> 

は、トリックをしました!

.......はい私は今や愚かな気分です!

関連する問題