在xml节点中传输PDF文件数据的正确方法是什么

时间:2014-05-14 22:41:53

标签: c# xml xml-serialization

我正在构建一个旧的时尚断开连接的数据交换接口,其中一部分是生成带有嵌入式文档和PDF文件数据的xml。在到达指定网络之前,数据将使用SFTP和网关传输到目标文件夹(数据包将被加密,由防火墙扫描)。

我正在尝试将pdf文档嵌入到具有Base64编码的xml节点中,因为xml信封需要加密。

<DataUpload>
<PdfData>*****</PdfData>
        ...
</DataUpload>

定义PDFData属性的正确方法是什么? (参见下面的代码,显示两个选项)

xmlSerializer.Serialize(file,root)方法将用于转储xml文件 在第一种方法中,我可以获得包含PDF数据的bytearry,在第二种方法中,pdf数据(byte arry或stream)将被转换为base64字符串。第一种或第二种方法是正确的?

 [System.SerializableAttribute()]
    public partial class DataUpload
    {
        // 1st Approach
        [System.Xml.Serialization.XmlElementAttribute("PdfData", DataType = "base64Binary")]
        public byte[] PdfData { get; set; }

        // 2nd Approach
        [System.Xml.Serialization.XmlElementAttribute("PdfData")]
        public string Base64StringPdfData { get; set; }
    }

0 个答案:

没有答案