2021年8月26日 星期四

[MVC]使用Ajax.BeginForm取得檔案欄位

form裡面一定要加入enctype = "multipart/form-data" Controller才會取得二進位制資料


@using (Ajax.BeginForm("FileUpload", "xxx", null, new AjaxOptions { HttpMethod = "Post",               OnSuccess = "" }, new{  @enctype = "multipart/form-data" }))
{
   <input type="file" name="files" class="form-control">
}


[Authorize]
[HttpPost]
public ActionResult FileUpload(FormCollection form, IEnumerable<HttpPostedFileBase> files)
{

}

Visual Studio JS intellisense 失效解決方式

  試了好久,發現到工具>選項>IntelliCode js項目設定啟用,重新開啟VS就正常了! 後來發現是TypeScript3.2版有問題停用,使用4.3版的TypeScript即可