แสดงชื่อไฟล์ที่เป็น non-US-ASCII บน File Download dialog box

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: แสดงชื่อไฟล์ที่เป็น non-US-ASCII บน File Download dialog box

แสดงชื่อไฟล์ที่เป็น non-US-ASCII บน File Download dialog box

โดย jataz2 » 03/06/2015 10:43 am

ตอนกด ดาวน์โหลด เเละเด้ง dialog box เพื่อกด save ไฟล์ถ้าชื่อไฟล์เป็นภาษาอังกฤษ จะเเสดงชือได้ถูกต้องอยู่เเล้ว
เเต่ถ้าชื่อไฟล์ มีอักขระภาษาไทย จะเเสดงชื่อไฟล์เป็น default เเละไม่ระบุ type ของไฟล์
แก้ปัญหาด้วยการเพิ่ม Response.AppendHeader ดังตัวอย่างด้านล่าง

public FileResult DownloadUploadFile(Decimal sysupload_id)
{
Response.AppendHeader("Content-Disposition", "attachment;filename= " + HttpUtility.UrlEncode("ทดสอบTest ", System.Text.Encoding.UTF8));

return File(result.ByteStream, System.Net.Mime.MediaTypeNames.Application.Zip, "ทดสอบTest ");
}

ข้างบน