【问题标题】:How to write xml string to file and download it using WCF?如何将 xml 字符串写入文件并使用 WCF 下载?
【发布时间】:2016-04-09 08:25:25
【问题描述】:

我需要使用 WCF WebGet 方法下载 xml 文件。

我已经准备好xml字符串,我只想将它写入某个文件然后下载它。

        public string xmlString = @"<?xml version=""1.0"" encoding=""utf-8"" standalone=""no""?>
<NamedRecon>
  <Recon>
    <Name>Accounting Cash Performance 2 Assets</Name>
    <Description></Description>
    <Type>Accounting Cash</Type>
    <FundName>IVP</FundName>
    <PBName>JPMC</PBName>
    <reportviewerid></reportviewerid>
    <is_month_end>false</is_month_end>
    <is_continuity_enabled>false</is_continuity_enabled>
    <recon_frequency_id>1</recon_frequency_id>
    <fund_mail_ids></fund_mail_ids>
    <pb_mail_ids></pb_mail_ids>
    <recon_tags></recon_tags>
    <NormalizedView>
      <Name></Name>
    </NormalizedView>
  </Recon>
</NamedRecon>";

我想我在这里不清楚,所以让我多提点意见。基本上我没有遇到任何错误。我有要求

  1. 我需要从数据库中获取数据。
  2. 将这些数据转换为 xml 字符串。
  3. 将该xml字符串写入文件并使用WCF方法下载。

我已经完成了 1 和 2,因为我是 WCF 的新手,所以需要一些帮助来获得第 3 点。任何帮助将不胜感激。

基本上在 UI 中有一个按钮,点击后我需要下载一个 xml 文件。

【问题讨论】:

  • WCF 能够本机返回 XML。为什么要将其写入文件?
  • @GalacticCowboy 基本上在 UI 中有一个按钮,点击我需要下载 xml 文件。
  • 一个文件是一个字节框。当你“下载”一个文件时,我们会从文件中取出字节,通过软管(称为互联网)将其输入,另一方面,我们将字节倒入另一个盒子中。为什么要在我们通过 Internet 发送这些字节之前将它们放入文件中?
  • @Aron 有一个功能,我需要下载 xml 文件。我已经准备好xml现在需要将它写入一些文件,以便我可以在不同的机器上上传时使用该文件。
  • 修复您的代码会更正确 1) 从 DB 读取对象 2) 将对象转换为 XML 字符串 3) 将字符串写入文件 4) 将文件读取为字符串 5) 使用 WCF 发送字符串。您不能使用 WCF“发送文件”,就像您不能通过电子邮件“发送”一张纸一样。

标签: asp.net xml wcf c#-4.0


【解决方案1】:

你可以写一个返回XmlElement的方法,很简单:

 public XmlElement ReturnXml ()
        {
            public string xmlString = @".....";
            XmlDocument doc = new XmlDocument();
            doc.Load(new System.IO.StringReader(xmlString));
            return doc.DocumentElement;
        }

希望对你有帮助

【讨论】:

  • 基本上在 UI 中有一个按钮,点击我需要下载 xml 文件
  • 上面的代码对你有用,你可以使用 XmlDocument.Load() 将文件加载到字符串中
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-28
  • 2018-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多