ここに 2 つの問題があります。
関数:
public ActionResult File(Guid Id, string Name)
{
using (var db = new DBContext())
{
var file = db.Attachments.Where(s => s.Id == Id).FirstOrDefault();
if (file == null)
{
return HttpNotFound();
}
return File(file.Path, file.ContentType, file.OriginalName + file.Extension);
}
}
ブラウザにこのファイルのダウンロードまたは表示を決定させたい場合を除いて、正常に動作します。通常、そのようなリンクをクリックすると、この画像が表示されるため、.png画像が自動的にダウンロードされます。これどうやってするの?
そして2番目の問題:これがこの関数への私のルートです:
routes.MapRoute(name: "Files", url: "file/{id}/{file}",
defaults: new { controller = "Home", action = "File",
id = UrlParameter.Optional,
file = UrlParameter.Optional });
file
パラメータをに設定すると。たとえば、1.png
404 ecxeption がスローされます。私が理解しているように、これはサーバー上で直接ファイルを検索しているときに発生しますが、私の機能ではありません。この関数を常に呼び出すようにこのルートを作成するにはどうすればよいですか?
お時間をいただきありがとうございます!