我正在使用似乎是使用内存流将XmlDocument下载到浏览器的非常标准的方法:
<Image Grid.Row="1" Source="{Binding uriImageSource}" Name="imageViewer"></Image>
所有似乎都运行良好,除了文件没有指定的名称或扩展名...它以与此代码运行的.apsx.cs对应的.apsx页面命名。
在某些方面与此案非常相似:
Change name of file sent to client?
虽然我正在使用内存流并处理XML,并且已经设置了Content-Disposition,因此给定的修复程序在这里不起作用(除非我以某种方式做错了吗?)
我已经能够在浏览器中打开XML Document了,但我认为必须能够在这里获得正确的文件名和扩展名。
我尝试将ContentType更改为&#34; text / xml&#34;,并尝试使用和不使用&#34;附件;&#34;在Content-Disposition标头的filename参数之前。
如果我可以提供更多代码或查看任何内容,请告知我们。
答案 0 :(得分:2)
为了解决这个问题,我建议采取以下步骤(那些对我有用的):
:
标题名称中的冒号Content-Disposition
。attachment
标头值中使用Content-Disposition
。text/xml
。示例:
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=samplefile.xml");
// ...
HttpContext.Current.Response.ContentType = "text/xml";