:私は、クリックイベントからDoStuff
メソッドを呼び出した場合、それは.ashxからメソッドを呼び出す - 私の.aspxの中> Response.Writeをファイル
private void GenerateXml()
{
var JsonXmlData = HttpContext.Current.Request["objectToSend"];
XmlDocument doc = JsonConvert.DeserializeXmlNode(JsonXmlData);
SystemAuditView.DoStuff(doc); //systemauditview is the .aspx
}
:私のhandler.ashxで
public static void DoStuff(XmlDocument doc)
{
HttpResponse response = HttpContext.Current.Response;
string xmlString = doc.InnerXml;
string fileName = "ExportedForm.xml";
response.StatusCode = 200;
response.AddHeader("content-disposition", "attachment; filename=" + fileName);
response.AddHeader("Content-Transfer-Encoding", "binary");
// response.AddHeader("Content-Length", _Buffer.Length.ToString());
response.ContentType = "application-download";
response.Write(xmlString);
}
働くしかし、私がそれをコードの背後から呼び出すと、何も起こりません。私は何とかポストバックを引き起こす必要があると思いますか?または、ここで問題は何ですか?ありがとう
クリックイベントから呼び出す方法のコード例と、コードの背後からどのように呼び出すか(どのような方法で)どうすればよいですか? –
@RăzvanPanda 'SystemAuditView.DoStuff(doc);'コードbeindから。 clickはasp:buttonの標準クリックイベントです – Johan
回答を編集してください。asp:ボタンに使用するコードとボタンOnClickハンドラで使用するコードを追加してください。あなたは 'SystemAuditView.DoStuff(doc);'というコードをどのようなイベントの後ろに置いていますか? –