【发布时间】:2016-05-04 05:48:23
【问题描述】:
我有一个 BizTalk 解决方案,一旦他们的电话在我们的系统中注册,它就会向我们的客户发送 SMS。不幸的是,SMS 中会包含这样的 XML 标签。
如何删除短信中的
strCellNos = classHelper.getElement(SendSMStoCustomerRequest, "cell_number");
strSMS = classHelper.getElement(SendSMStoCustomerRequest, "message");
msg_SendSMStoCustomer.parameter = strSMS;
msg_SendSMStoCustomer(SMTP.Subject) = "Test Message for " + strCellNos ;
msg_SendSMStoCustomer(SMTP.From) = "noreply@none.com";
msg_SendSMStoCustomer(SMTP.SMTPHost) = "SMTPHOST";
msg_SendSMStoCustomer(SMTP.EmailBodyText) = strSMS ;
msg_SendSMStoCustomer(SMTP.EmailBodyTextCharset)="UTF-8";
msg_SendSMStoCustomer(SMTP.SMTPAuthenticate) = 0;
【问题讨论】:
-
应该使用元素的文本属性而不是元素本身吗?
-
Brody,我不确定您的确切意思,因为我是 BizTalk 的新手。你问的如何使用 text 属性?
-
当您使用 getElement 时,它可能会返回整个元素,当您用作字符串时,它会返回包装元素标签。您需要使用 getElement(...).Text 或类似的东西(可能是 innerText)来获取元素文本,这将只返回元素的内部文本值。
-
我已经在使用 innerText,我的代码如下所示: public string getElement(System.Xml.XmlDocument xmlMessage, string node) { string xmlVal = string.Empty; XmlNodeList nodeList = xmlMessage.GetElementTag(node); foreach (XmlNode xmlElement in nodeList) { xmlVal = xmlElement.InnerText; } 返回 xmlVal; } 我的代码有什么问题吗?