Manage File Attachments in ASP.NET Core Rich Text Editor
The Rich Text Editor allows you to attach a file using the file upload. You can attach files using the upload dialog or by drag-and-drop from your local file system. When the file upload succeeds, an attachment link is inserted in the content.
In the sample below, the saveUrl and path properties are configured to enable file attachments.
1. saveUrl: Provides service URL to save the files.
2. path: Specifies the location to store the image.
The following sample illustrates how to attach a file in the Rich Text Editor.
To config server-side handler, refer the below code.
int x = 0;
string file;
[AcceptVerbs("Post")]
public void Save()
{
try
{
var httpPostedFile = System.Web.HttpContext.Current.Request.Files["UploadFiles"];
file = httpPostedFile.FileName;
if (httpPostedFile != null)
{
Console.WriteLine(System.Web.HttpContext.Current.Server.MapPath("~/Files"));
var fileSave = System.Web.HttpContext.Current.Server.MapPath("~/Files");
if (!Directory.Exists(fileSave))
{
Directory.CreateDirectory(fileSave);
}
var fileName = Path.GetFileName(httpPostedFile.FileName);
var fileSavePath = Path.Combine(fileSave, fileName);
while (System.IO.File.Exists(fileSavePath))
{
file = "rte" + x + "-" + fileName;
fileSavePath = Path.Combine(fileSave, file);
x++;
}
if (!System.IO.File.Exists(fileSavePath))
{
httpPostedFile.SaveAs(fileSavePath);
HttpResponse Response = System.Web.HttpContext.Current.Response;
Response.Clear();
Response.Headers.Add("name", file);
Response.ContentType = "application/json; charset=utf-8";
Response.StatusDescription = "File uploaded succesfully";
Response.Headers.Add("url", fileSavePath);
Response.End();
}
}
}
catch (Exception e)
{
HttpResponse Response = System.Web.HttpContext.Current.Response;
Response.Clear();
Response.ContentType = "application/json; charset=utf-8";
Response.StatusCode = 204;
Response.Status = "204 No Content";
Response.StatusDescription = e.Message;
Response.End();
}
}