ASP.NET 웹 양식 응용 프로그램이 있습니다. 사용자가 을 다운로드 할 수 있도록 다운로드 링크를 만들고 싶습니다. 그러나 파일을 서버에 저장할 필요는 없습니다. 내가 것 지금서버에 저장하지 않고 XML을 만들고 다운로드하는 방법
Dim productId As String = Request.QueryString("productId")
Dim xmlDoc As String = _ProductServices.GetXmlDocPerId(productId)
Dim xdoc As XmlDocument = New XmlDocument()
xdoc.LoadXml(xmlLicense)
다음 download.aspx.vb 페이지에서
<asp:HyperLinField Text="Download" DataNavigateUrlFormatString="download.aspx?ProductId={0}" DataNavigateUrlFields="ProductId">
: 내 영문 파일에서
나는 다운로드 링크 (A의 GridView 내부에 위치)가 파일을 만들려면 XML 컨텐트를 안에 넣고 서버에 저장하지 않고 사용자에게 전달하십시오. MemoryStream
과 StreamReader
을 조합하여 사용해야합니까?
Private Sub SendResults()
'Write the XML for the DataSet.
Page.Response.ContentType = "text/xml"
Page.Response.Output.Write(xmlContentAsString)
Page.Response.End()
End Sub
는 기본적으로, 당신은이 XMLDocument 내용을 응답 출력 유형을 변경하고 출력에 전달 :로
감사! @CiccioMiami - 파일을 만들지 않고도 다운로드 대화 상자를 열어도됩니다. 사용자가 XML 파일을 다운로드하여 브라우저에서 볼 수 없기 때문에 파일을 만들어야합니다. – CiccioMiami
@CiccioMiami - 파일을 만들 필요없이 다운로드 대화 상자를 열어도됩니다. ['Content-Disposition' 헤더] (http://en.wikipedia.org/wiki/MIME#Content-Disposition)도 사용해야하지만 실제 디스크에 파일을 만들 필요는 없습니다. – Oded
덕분에 다운로드가 작동하지만 XML에서 구문 분석 오류가 발생합니다 ... XML 응답이 아래에있는 메서드를 사용하면 올바르게 구문 분석되지만 다운로드 프롬프트가 표시되지 않습니다. – CiccioMiami