[英]How to upload file on button click using kendo file upload
我有一個kendo上傳和一個按鈕,並且我想在單擊按鈕上傳時使用kendo文件上傳來上傳文件。
當我調試動作方法httppostefile時,返回null。
這是我的動作方法。
[HttpPost]
public ActionResult UploadHactAssesmentAttachment(IEnumerable<HttpPostedFileBase> Files)
{
TBL_ASST_HACTA_ATTACHMENT obj = new TBL_ASST_HACTA_ATTACHMENT();
foreach (var file in Files)
{
if (file.ContentLength > 0)
{
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/ProjectUploadedDocuments"), fileName);
obj.FilePath = path;
obj.CreatedDateTime = DateTime.Now;
obj.CreatedByID = Convert.ToInt32(Session["UserID"]);
dbcontext.TBL_ASST_HACTA_ATTACHMENT.Add(obj);
file.SaveAs(path);
dbcontext.SaveChanges();
}
}
return RedirectToAction("Index");
}
視圖
@using (Ajax.BeginForm("UploadHactAssesmentAttachment", "Partner", null, new AjaxOptions
{
HttpMethod = "POST",
InsertionMode = InsertionMode.Replace,
OnSuccess = "OnSuccessAttachment"
}))
{
<div class="row">
<div class="col-lg-3">
@Html.Label("key finding Add attachment:")
</div>
<div class="col-lg-3">
@(Html.Kendo().Upload()
.Name("Files")
)
</div>
</div>
<div class="row">
<div class="col-lg-3"></div>
<div class="col-lg-3">
@Html.Kendo().Button().Name("btnAddattachment").Content("Add").HtmlAttributes(new { style = "width: 20%" })
</div>
</div>
要async
上傳文件,無需使用@(Html.Kendo().Upload())
form
包裝,因為Upload
使用HTML5 File API( w3 , wiki ),並且kendo團隊還為較舊的瀏覽器提供了后備功能,所以最簡單的方法是:
<div class="row">
<div class="col-lg-3">
@(Html.Kendo().Upload()
.Name("files")
.Async(a => a
.Save("UploadHactAssesmentAttachment", "Upload")
.Remove("Remove", "Upload")//You need to implement it too
.AutoUpload(true)
)
)
</div>
</div>
我認為查看他們的文檔也可能會有所幫助。
希望它幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.