0

サーバー上のファイルに保存されている xml ドキュメントがあり、Linq を使用して同じものを XML に変更したいと考えています。これが私のコードです:

String strFile = File.ReadAllText(Server.MapPath("~/SessionAnalyserAccessories.xml"));
XDocument xdoc1 = XDocument.Parse(strFile);
xdoc1.XPathSelectElement("SESSIONANALYSER/AP/MODES/NI/STATEINFORMATION/INIT/INPUT/METHOD").AddAfterSelf(new XElement("METHOD", "", new XAttribute("NAME", "Saurabh")));

私が使用しているXMLサンプル、要素STATEINFORMATIONを追加する必要があります:

<SESSIONANALYSER>
  <AP>
    <MODES>
      <NI>
        <STATEINFORMATION TYPE="PREPAID">
          <INIT INVALIDINPUTRESPONSE="-2">
            <INPUT VALUE="SLN7ACTIVATION">
              <METHOD NAME="CHECKSUBSCRIBERBALANCE" PARAMETERS="SLN7" POSSIBLEACTIONS="FALLOUTON_FAILUREREGION_SETPSOFAILED_FALSE" MAINTAINSESSION="NO" RESPONSE="-4" NEXTLEVEL="" />
              <METHOD NAME="SETPSOINUCIP" PARAMETERS="SLN7" POSSIBLEACTIONS="FALLOUTON_FAILUREREGION_SETPSOFAILED_FALSE" MAINTAINSESSION="NO" RESPONSE="-4" NEXTLEVEL="" />
            </INPUT>
          </INIT>
        </STATEINFORMATION>
        <STATEINFORMATION TYPE="POSTPAID">
          <INIT INVALIDINPUTRESPONSE="-2">
            <INPUT VALUE="">
              <METHOD NAME="SENDMESSAGE" PARAMETERS="" POSSIBLEACTIONS="FALLOUTONSUCCESS" MAINTAINSESSION="NO" RESPONSE="5" NEXTLEVEL="" />
            </INPUT>
          </INIT>
        </STATEINFORMATION>
      </NI>
    </MODES>
  </AP>
</SESSIONANALYSER>
4

1 に答える 1

1

XMLツリーでLINQを介して要素を追加する際のサンプルを含むリンクをいくつか見つけました。

これらをご覧ください:-

http://msdn.microsoft.com/en-us/library/bb387083.aspx

http://msdn.microsoft.com/en-us/library/bb387084.aspx

于 2012-05-02T10:04:48.483 に答える