| [csHtml] @Html.EJS().Uploader("UploadFiles").AutoUpload(false).AsyncSettings(new Syncfusion.EJ2.Inputs.UploaderAsyncSettings { SaveUrl = "/Home/Save", RemoveUrl = "/Home/Remove" }).Render() [controller] [AcceptVerbs("Post")] public void Save() { if (System.Web.HttpContext.Current.Request.Files.AllKeys.Length > 0) { // Get the files using the name attribute as a key. var httpPostedFile = System.Web.HttpContext.Current.Request.Files["UploadFiles"]; if (httpPostedFile != null) { var fileSave = System.Web.HttpContext.Current.Server.MapPath("UploadedFiles"); if (!Directory.Exists(fileSave)) { Directory.CreateDirectory(fileSave); } var fileSavePath = Path.Combine(fileSave, httpPostedFile.FileName); if (!System.IO.File.Exists(fileSavePath)) { /*To save files at server*/ httpPostedFile.SaveAs(fileSavePath); HttpResponse Response = System.Web.HttpContext.Current.Response; Response.Clear(); Response.ContentType = "application/json; charset=utf-8"; Response.StatusDescription = "File uploaded succesfully"; Response.End(); } else { HttpResponse Response = System.Web.HttpContext.Current.Response; Response.Clear(); Response.Status = "400 File already exists"; Response.StatusCode = 400; Response.StatusDescription = "File already exists"; Response.End(); } } } } [AcceptVerbs("Post")] public void Remove() { try { var fileSave = System.Web.HttpContext.Current.Server.MapPath("UploadedFiles"); var fileName = System.Web.HttpContext.Current.Request.Files["UploadFiles"].FileName; var fileSavePath = fileSave + "\\" + fileName; if (System.IO.File.Exists(fileSavePath)) { System.IO.File.Delete(fileSavePath); } } catch (Exception e) { HttpResponse Response = System.Web.HttpContext.Current.Response; Response.Clear(); Response.Status = "404 File not found"; Response.StatusCode = 404; Response.StatusDescription = e.Message; Response.End(); } } |
|
[component.html]
<ejs-uploader #defaultupload [asyncSettings]='path' (uploading) = 'Uploading($event)' (removing) = 'Removing($event)'></ejs-uploader>
[component.ts]
public path: Object = {
saveUrl: 'https://aspnetmvc.syncfusion.com/services/api/uploadbox/Save',
removeUrl: 'https://aspnetmvc.syncfusion.com/services/api/uploadbox/Remove'
};
public Uploading = (args) => {
var data = [];
data.push({ name: args.fileData.name });
args.customFormData = data;
}
public Removing = (args) => {
var data = [];
data.push({ name: args.filesData[0].name });
args.customFormData = data;
}
|
|
[uploader server handler]
HttpContext.Current.Request.Form["key"] // uploader name attribute will be a key
|
|
[uploader server handler]
HttpContext.Current.Request.Form["key"] // uploader name attribute will be a key |
| @Html.EJS().Uploader("fileUploader").DropArea(".e-upload").AutoUpload(true).AsyncSettings(new Syncfusion.EJ2.Inputs.UploaderAsyncSettings { SaveUrl = "/Home/SaveAttachment", RemoveUrl = "/Home/RemoveAttachment" }).Files((System.Collections.Generic.List<Syncfusion.EJ2.Inputs.UploaderUploadedFiles>)ViewBag.existingAttachments).Removing("onFileRemove").Render() <script> function onFileRemove(args) { args.postRawFile = false; /* It will sent only the file name to delete action in server end */ } </script> |
| public void RemoveAttachment(FormCollection fileUploader) { // Your code here } |