Я пишу XML-данные в браузер пользователя для загрузки. Ниже приведен кодНаписание XML-файла для пользователей Браузер и загрузка
защищен недействительным WriteXmlToPageDownload (XElement XmlCustomerData) {
try
{
if (XmlCustomerData != null)
{
XDocument x = new XDocument(new XDeclaration("1.0", "UTF-8", "yes"), new XElement(XmlCustomerData));
StringBuilder builder = new StringBuilder();
StringWriter writer = new StringWriter(builder);
x.Save(writer);
writer.Flush();
HttpContext context = HttpContext.Current;
context.Response.Write(builder.ToString().Replace("encoding=\"utf-16\"", "encoding=\"utf-8\""));
context.Response.ContentType = "application/xml";
string filename = "CustomerDetails ";
context.Response.AppendHeader("Content-Disposition", "attachment; filename=" + filename + ".xml");
context.Response.AppendHeader("Connection", "close");
context.Response.End();
}
}
catch (Exception ex)
{
Log("Exception in CustomerData" + ex.Message.ToString(), this);
}
}
XmlCustomerData содержит XML, созданный XElement (бизнес-логика ...) Ниже образец XML требуется
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Customers>
<Customer>
<deatils name="ABC">
<id="1">
</details>
<deatils name="XYZ">
<id="2">
</details>
...
</Customer>
</Customers>
и XmlCustomerData содержит бизнес-логику, чтобы провести полный
<Customers>...</Customers>
Проблемы есть. 1.XML получает создание, а также не загружается в пользовательский браузер. 2.And получает исключение «Невозможно оценить выражение, потому что код оптимизирован или собственный кадр находится поверх стека вызовов».
Мое требование - загрузить XML-файл в браузер пользователя. Пожалуйста, дайте мне знать, какую ошибку я делаю или лучший способ этого.
Заранее спасибо.