Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 在代码中创建SOAP信封的最佳实践?_Xml_Typescript_Express_Soap_Nodes - Fatal编程技术网

Xml 在代码中创建SOAP信封的最佳实践?

Xml 在代码中创建SOAP信封的最佳实践?,xml,typescript,express,soap,nodes,Xml,Typescript,Express,Soap,Nodes,我有一个大的肥皂包身体 在我的应用程序表单旅程中,它的值累积在3个不同的模型中,由用户输入填充 我使用的是meanstack(mongoexpressnodejs)…typescript就是这种语言 构建此XML的最佳方式应该是什么,它将作为SOAP请求的主体传递 如果这是程序化的,那么请建议一个图书馆 我应该使用字符串的concat来完成这个任务吗 还有别的办法吗?就像将原始格式存储在某个模板文件中一样 30887 B11944 1. 11006 117944P 4502 2022714

我有一个大的肥皂包身体

在我的应用程序表单旅程中,它的值累积在3个不同的模型中,由用户输入填充

我使用的是meanstack(mongoexpressnodejs)…typescript就是这种语言

构建此XML的最佳方式应该是什么,它将作为SOAP请求的主体传递

  • 如果这是程序化的,那么请建议一个图书馆
  • 我应该使用字符串的concat来完成这个任务吗
  • 还有别的办法吗?就像将原始格式存储在某个模板文件中一样

30887
B11944
1.
11006
117944P
4502
20227141272095
阿米特
123
不
amit@gmail.com
阿米特
2020-08-14
0
30887
0
苏尼尔·库马尔
30887
Paytm
PG21967
1234
电磁干扰
0

以下是用于序列化的网络代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
using System.IO;

namespace ConsoleApplication1
{
    class Program
    {
        const string INPUT_FILENAME = @"c:\temp\test.xml";
        const string OUTPUT_FILENAME = @"c:\temp\test1.xml";
        static void Main(string[] args)
        {
            string soap = File.ReadAllText(INPUT_FILENAME);
            StringReader sReader = new StringReader(soap);
            XmlReader xReader = XmlReader.Create(sReader);
            XmlSerializer serializer = new XmlSerializer(typeof(Envelope));
            Envelope envelope = (Envelope)serializer.Deserialize(xReader);

            XmlSerializerNamespaces namespaces = new XmlSerializerNamespaces();
            namespaces.Add("soapenv", "http://schemas.xmlsoap.org/soap/envelope/");
            namespaces.Add("b2b", "http://www.abcd.com/B2BService");
            namespaces.Add("ser", "http://schemas.datacontract.org/2004/07/ServiceObjects");
            namespaces.Add("pol", "http://schemas.datacontract.org/2004/07/Policy");

            XmlWriterSettings settings = new XmlWriterSettings();
            settings.Indent = true;
            XmlWriter writer = XmlWriter.Create(OUTPUT_FILENAME, settings);
            serializer.Serialize(writer, envelope, namespaces);
        }
    }
    [XmlRoot(ElementName = "Envelope", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
    public class Envelope
    {
        [XmlElement(ElementName = "Header", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
        public Header Header { get; set; }
        [XmlElement(ElementName = "Body", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
        public Body Body { get; set; }
    }
    public class Header
    {
    }
    public class Body
    {
        [XmlArray(ElementName = "IssuePolicy", Namespace = "http://www.abcd.com/B2BService")]
        [XmlArrayItem(ElementName = "PolicyIssuanceRequest", Namespace = "http://www.abcd.com/B2BService")]
        public List<Policy> Policy { get; set; }
    }
    public class Policy
    {
        [XmlElement(ElementName = "PaymentDetails", Namespace = "http://schemas.datacontract.org/2004/07/Policy")]
        public Payment Payment { get; set; }
    }
    public class Payment
    {
        [XmlArray(ElementName = "ApplicationDetails", Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        [XmlArrayItem(ElementName = "PartnerApplicationDetails", Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public List<Application> Application { get; set; }

        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int BankCode { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public long BankRefNo { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string CardHolderName { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int ChildID { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string CrossSellCommonCode { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string CustomerEmail { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string CustomerName { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public DateTime DateofReceipt { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int EduCess { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int GrossTxnAmount { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int HigherEduCess { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string InsuredName { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int NetAmountPaid { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string PGType { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string ParentID { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int PaymentNumber { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string PaymentType { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int ServiceTax { get; set; }
    }
    public class Application
    {
        public int Amount { get; set; }
        public string ApplicationNumber { get; set; }
        public int BusinessType { get; set; }
        public int ProductCode { get; set; }
        public string ProposalNumber { get; set; }
    }
}
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
使用System.Xml;
使用System.Xml.Serialization;
使用System.IO;
命名空间控制台应用程序1
{
班级计划
{
常量字符串输入\u文件名=@“c:\temp\test.xml”;
常量字符串输出\u文件名=@“c:\temp\test1.xml”;
静态void Main(字符串[]参数)
{
字符串soap=File.ReadAllText(输入文件名);
StringReader sReader=新的StringReader(soap);
XmlReader=XmlReader.Create(sReader);
XmlSerializer serializer=新的XmlSerializer(typeof(信封));
信封=(信封)序列化程序。反序列化(xReader);
XmlSerializerNamespaces=新的XmlSerializerNamespaces();
名称空间。添加(“soapenv”http://schemas.xmlsoap.org/soap/envelope/");
名称空间。添加(“b2b”http://www.abcd.com/B2BService");
名称空间。添加(“ser”http://schemas.datacontract.org/2004/07/ServiceObjects");
名称空间。添加(“pol”http://schemas.datacontract.org/2004/07/Policy");
XmlWriterSettings=新的XmlWriterSettings();
settings.Indent=true;
XmlWriter=XmlWriter.Create(输出文件名、设置);
序列化(编写器、信封、名称空间);
}
}
[XmlRoot(ElementName=“信封”,命名空间=”http://schemas.xmlsoap.org/soap/envelope/")]
公共类信封
{
[XmlElement(ElementName=“Header”,命名空间=”http://schemas.xmlsoap.org/soap/envelope/")]
公共标头{get;set;}
[XmlElement(ElementName=“Body”,命名空间=”http://schemas.xmlsoap.org/soap/envelope/")]
公共机构主体{get;set;}
}
公共类标题
{
}
公共阶级团体
{
[XmlArray(ElementName=“IssuePolicy”,命名空间=”http://www.abcd.com/B2BService")]
[XmlArrayItem(ElementName=“PolicyIssuanceRequest”,命名空间=”http://www.abcd.com/B2BService")]
公共列表策略{get;set;}
}
公共阶级政策
{
[XmlElement(ElementName=“PaymentDetails”,命名空间=”http://schemas.datacontract.org/2004/07/Policy")]
公共支付{get;set;}
}
公共类支付
{
[XmlArray(ElementName=“ApplicationDetails”,命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
[XmlArrayItem(ElementName=“PartnerApplicationDetails”,命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共列表应用程序{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共整数银行代码{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共长BankRefNo{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共字符串名称{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
public int ChildID{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共字符串CrossSellCommonCode{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共字符串CustomerEmail{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共字符串CustomerName{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共DateTime DateofReceipt{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共整数访问{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
public int GrossTxnAmount{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共int高等教育{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共字符串保险名称{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共整数{get;set;}
[XmlElement(命名空间=”http://schemas.datacontract.org/2004/07/ServiceObjects")]
公共字符串类型{get;set;}
[XmlElement(命名空间=”http://schemas
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
using System.IO;

namespace ConsoleApplication1
{
    class Program
    {
        const string INPUT_FILENAME = @"c:\temp\test.xml";
        const string OUTPUT_FILENAME = @"c:\temp\test1.xml";
        static void Main(string[] args)
        {
            string soap = File.ReadAllText(INPUT_FILENAME);
            StringReader sReader = new StringReader(soap);
            XmlReader xReader = XmlReader.Create(sReader);
            XmlSerializer serializer = new XmlSerializer(typeof(Envelope));
            Envelope envelope = (Envelope)serializer.Deserialize(xReader);

            XmlSerializerNamespaces namespaces = new XmlSerializerNamespaces();
            namespaces.Add("soapenv", "http://schemas.xmlsoap.org/soap/envelope/");
            namespaces.Add("b2b", "http://www.abcd.com/B2BService");
            namespaces.Add("ser", "http://schemas.datacontract.org/2004/07/ServiceObjects");
            namespaces.Add("pol", "http://schemas.datacontract.org/2004/07/Policy");

            XmlWriterSettings settings = new XmlWriterSettings();
            settings.Indent = true;
            XmlWriter writer = XmlWriter.Create(OUTPUT_FILENAME, settings);
            serializer.Serialize(writer, envelope, namespaces);
        }
    }
    [XmlRoot(ElementName = "Envelope", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
    public class Envelope
    {
        [XmlElement(ElementName = "Header", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
        public Header Header { get; set; }
        [XmlElement(ElementName = "Body", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
        public Body Body { get; set; }
    }
    public class Header
    {
    }
    public class Body
    {
        [XmlArray(ElementName = "IssuePolicy", Namespace = "http://www.abcd.com/B2BService")]
        [XmlArrayItem(ElementName = "PolicyIssuanceRequest", Namespace = "http://www.abcd.com/B2BService")]
        public List<Policy> Policy { get; set; }
    }
    public class Policy
    {
        [XmlElement(ElementName = "PaymentDetails", Namespace = "http://schemas.datacontract.org/2004/07/Policy")]
        public Payment Payment { get; set; }
    }
    public class Payment
    {
        [XmlArray(ElementName = "ApplicationDetails", Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        [XmlArrayItem(ElementName = "PartnerApplicationDetails", Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public List<Application> Application { get; set; }

        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int BankCode { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public long BankRefNo { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string CardHolderName { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int ChildID { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string CrossSellCommonCode { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string CustomerEmail { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string CustomerName { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public DateTime DateofReceipt { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int EduCess { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int GrossTxnAmount { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int HigherEduCess { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string InsuredName { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int NetAmountPaid { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string PGType { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string ParentID { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int PaymentNumber { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public string PaymentType { get; set; }
        [XmlElement(Namespace = "http://schemas.datacontract.org/2004/07/ServiceObjects")]
        public int ServiceTax { get; set; }
    }
    public class Application
    {
        public int Amount { get; set; }
        public string ApplicationNumber { get; set; }
        public int BusinessType { get; set; }
        public int ProductCode { get; set; }
        public string ProposalNumber { get; set; }
    }
}