在C#控制器中支持文件上傳,可以使用ASP.NET MVC的HttpPostedFileBase類來實現。以下是一個簡單的示例代碼:
[HttpPost]
public ActionResult UploadFile(HttpPostedFileBase file)
{
if (file != null && file.ContentLength > 0)
{
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/Uploads"), fileName);
file.SaveAs(path);
// 文件上傳成功
ViewBag.Message = "文件上傳成功";
}
else
{
// 文件上傳失敗
ViewBag.Message = "請選擇要上傳的文件";
}
return View();
}
在上面的示例代碼中,控制器的方法接受一個HttpPostedFileBase類型的參數file,表示上傳的文件。然后判斷文件是否為空并保存文件到服務器的指定路徑。最后返回一個視圖并顯示上傳結果。
在前端頁面中,可以使用表單來上傳文件:
@using (Html.BeginForm("UploadFile", "Home", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<input type="file" name="file" />
<input type="submit" value="上傳" />
}
在上面的示例代碼中,使用Html.BeginForm方法創建一個表單,將enctype屬性設置為"multipart/form-data"以支持文件上傳。然后通過input標簽的type為file來選擇要上傳的文件,最后通過input標簽的type為submit來提交表單。