2013-05-23 3 views
1

Я пытался следовать этому блогу http://world.episerver.com/Blogs/Anders-Hattestad/Dates/2013/1/Upload-within-Xform/EPiServer XForm - Прикрепление файла к электронной почте

форме загрузки работы, однако файл не отображается в сообщении электронной почты, но загружается на сервер, поэтому его делать что-то ,

Инструкции Я являюсь ...

Просто прикрепить к

BeforeSubmitPostedData event 
Check if ((e.FormData.ChannelOptions & ChannelOptions.Email) != ChannelOptions.Email) is true 

затем отправить пользовательскую почту и удалить опцию отправки почты

e.FormData.ChannelOptions &= ~ChannelOptions.Email; 

Если кто-то могут упростить эти для меня, было бы полезно ...

Большое спасибо.

Marc.

ответ

2

в Application_Start в вашем global.asax вам нужно приложить к XFormControl.ControlSetup Event

protected void Application_Start(object sender, EventArgs e) 
{ 
    XFormControl.ControlSetup += new EventHandler(XForm_ControlSetup); 
} 

Тогда в вашем методе XForm_ControlSetup, прикрепляются к соответствующему событию

public void XForm_ControlSetup(object sender, EventArgs e) 
{ 
    XFormControl control = (XFormControl)sender; 

    control.BeforeSubmitPostedData += new SaveFormDataEventHandler(XForm_BeforeSubmitPostedData); 
} 

И в вашем XForm_BeforeSubmitPostedData метод

public void XForm_BeforeSubmitPostedData(object sender, SaveFormDataEventArgs e) 
{ 
    // Untested 
    if ((e.FormData.ChannelOptions & ChannelOptions.Email) != ChannelOptions.Email) 
    { 
     // Send custom mail here 

     // Remove the send mail option 
     e.FormData.ChannelOptions &= ~ChannelOptions.Email; 
    } 
    // End untested :) 
} 
+0

Благодарим за ответ! У меня нет настройки управления в моем файле Form.ascx.cs на данный момент, я просто добавлю один? Кроме того, добавление верхней строки приводит к сбою сайта ... Приведет BeforeSumbitPostedData a go, поскольку эта строка существует. Большое спасибо. –

+0

ControlSetup - это статическое событие в классе XFormControl. http://sdk.episerver.com/library/cms6/html/E_EPiServer_XForms_WebControls_XFormControl_ControlSetup.htm Что вы имеете в виду, добавляя верхнюю строку сбой сайта? – tompipe