2
private const string TECHACCOUNTAMTITEM_AMT_XPATH = @"//Part[translate(@Type, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') = 'instalment']/acord:Jv-Ins-Reinsurance/acord:TechAccount/acord:Subaccount/acord:TechAccountAmtItem[translate(@Type, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') != 'ipt' and translate(@AmtStatus, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') != 'informational']/acord:Amt";
var xmlNamespaceManager = this._namespaceManager.GetNamespaceManager(this.TransactionPayload.OuterXml);
var techAccountAmtItemAmt = Decimal.Parse(this.TransactionPayload.SelectSingleNode(TECHACCOUNTAMTITEM_AMT_XPATH, xmlNamespaceManager).InnerText);
で作業していない上記の二つの文は、値4500は、XPath SELECTSINGLENODE
を与えます。しかし、私は翻訳し、値だけをfetechに直接それを使いたい使いたいいけません。
!=が以下のように動作していないため、値を取得せずにnullになっているようです。
ここでは達成しようとしているが動作していない新しいXpathがあります。
private const string TECHACCOUNTAMTITEM_AMT_XPATH = @"//Part[@Type = 'Instalment']/acord:Jv-Ins-Reinsurance/acord:TechAccount/acord:Subaccount/acord:TechAccountAmtItem[@Type != 'ipt' and @AmtStatus != 'informational']/acord:Amt";
どのようにすれば同じことができますか?
MSDNの[not()not not()]と非常に多くのキーワードを試しましたが、何時間も働かなかった。今回は試してみましたが、それは魅力のように働いていました。ありがとう:) (@Type = 'insurance_premium_tax')ではなく(@AmtStatus = 'informational')] – RahulJha