2017-08-01 7 views
-1

ファイルをダウンロードするには、次のコードが必要です。@ Url.データベースからファイルをダウンロードするための操作

<a href="@Url.Action("downloadAnnounceFile","Home")[email protected]" target="_blank">Download</a> 

IEでは、新しいページが開き、そこからFirefox/Chrome用のファイルをダウンロードできるようになります。 obj.AnnounceFileIDは、データベースのファイルそのものです。それは常にタイプpdfであるとは限りません。 obj.LinkFileNameにはファイルの名前がありますが、この行を正しく再構成する方法がわかりません。私は以下を試みたが、うまくいかなかった。どんな助けもありがとうございます。

<a href="@Url.Action("downloadAnnounceFile","Home", new { filename = @obj.LinkFileName, [email protected] })" target="_blank">Download</a> 
+1

「うまくいかない」* how *?これは実際にはどのように失敗していますか? – David

+0

予想される動作は何ですか? –

+0

urlにquerystringというファイル名を入れることはできませんか? –

答えて

1

2回目の試行で@のシンボルを削除します。あなたはヘルパーの中にいるので、モデル値を解決するために@シンボルは必要ありません。

<a href="@Url.Action("downloadAnnounceFile","Home", 
new { filename = obj.LinkFileName, file=obj.AnnounceFileID })" target="_blank">Download</a> 

あなたは最初の試み(ほとんどの場合、URLを作成する手間をかけて)にあまりにも多くの作業をしようとしています。可能であれば@Url.Action()ヘルパーとRouteValues過負荷を使用して、MVCフレームワークにリンクを生成させます。

関連する問題