DevExpress Upload File

Penanganan upload file seperti di MVC pada webform / devexpress:

  1. Semua file disimpan di folder /Uploads/
  2. File diberikan penanda unik dengan GUID

[code language=”html”]
<dx:LayoutItem Caption="E-corr*" FieldName="attachment" ColSpan="2">
<LayoutItemNestedControlCollection>
<dx:LayoutItemNestedControlContainer ID="LayoutItemNestedControlContainer8" runat="server" SupportsDisabledAttribute="True">
<dx:ASPxUploadControl Theme="Metropolis" ID="UploadECorr" Width="20%" ClientInstanceName="UploadECorr"
runat="server" UploadMode="Standard" ClientVisible="true" OnFileUploadComplete="UploadECorr_FileUploadComplete">
<AdvancedModeSettings EnableMultiSelect="false" />
<ValidationSettings MaxFileSize="10485760"></ValidationSettings>
<ClientSideEvents FilesUploadComplete="onUploadControlFileUploadComplete" />
</dx:ASPxUploadControl>
</dx:LayoutItemNestedControlContainer>
</LayoutItemNestedControlCollection>
</dx:LayoutItem>
[/code]

[code language=”csharp”]
protected void UploadECorr_FileUploadComplete(object sender, DevExpress.Web.ASPxUploadControl.FileUploadCompleteEventArgs e)
{
string uploadFolder = Server.MapPath("~/Uploads/");
string fileName = e.UploadedFile.FileName;

var identifier = Guid.NewGuid();
string plainFileName = Path.GetFileNameWithoutExtension(fileName);
string friendlyFilename = new DisplayFormatHelper().URLFriendly(plainFileName) + Path.GetExtension(fileName);
string uniqueFileName = identifier + "_" + friendlyFilename;

e.UploadedFile.SaveAs(uploadFolder + uniqueFileName);
e.CallbackData = uniqueFileName;

Session["ECorrFileName"] = uniqueFileName;
}

private mitra_invite_meeting SaveData(int id)
{
//…

if (Session["ECorrFileName"] != null)
{
mim.attachment = "~/Uploads/" + Session["ECorrFileName"] as string;
Session["ECorrFileName"] = null;
}

//…
}
[/code]

Chandra Oemaryadi has written 244 articles

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>