C# LINQXML选择内部选择
我有以下xml:C# LINQXML选择内部选择,c#,xml,linq,select,C#,Xml,Linq,Select,我有以下xml: <transactionSearchResult> <resultsInThisPage>14</resultsInThisPage> <currentPage>1</currentPage> <totalPages>1</totalPages> <date>2011-10-28T11:20:10.000-02:00</date> <transactions>
<transactionSearchResult>
<resultsInThisPage>14</resultsInThisPage>
<currentPage>1</currentPage>
<totalPages>1</totalPages>
<date>2011-10-28T11:20:10.000-02:00</date>
<transactions>
<transaction>
<date>2011-06-17T18:21:03.000-03:00</date>
<reference>ba3b7d36-a9e6-4d48-82b8-edf31a18fa49</reference>
<code>4E63AE64-24CF-4F70-A275-4B964E3DA6A5</code>
<type>1</type>
<status>4</status>
<paymentMethod>
<type>1</type>
</paymentMethod>
<grossAmount>1.00</grossAmount>
<discountAmount>0.00</discountAmount>
<feeAmount>0.46</feeAmount>
<netAmount>0.54</netAmount>
<extraAmount>0.00</extraAmount>
<lastEventDate>2011-07-01T19:27:36.000-03:00</lastEventDate>
</transaction>
<transaction>
.
.
.
</transaction>
.
.
.
林克州:
var transactions = from transaction in xml.Descendants("transaction")
select new
{
code = transaction.Element("code").Value,
reference = transaction.Element("reference").Value,
date = transaction.Element("date").Value,
type = transaction.Element("type"),
status = transaction.Element("status"),
grossAmount = transaction.Element("grossAmount").Value,
discountAmount = transaction.Element("discountAmount").Value,
feeAmount = transaction.Element("feeAmount").Value,
netAmount = transaction.Element("netAmount").Value,
extraAmount = transaction.Element("extraAmount").Value,
lastEventDate = transaction.Element("lastEventDate").Value,
paymentMethod = from p in transaction.Descendants("paymentMethod")
select p.Element("type").Value};
var transactions=来自xml.substands中的事务(“事务”)
选择新的
{
代码=事务。元素(“代码”)。值,
reference=transaction.Element(“reference”).值,
日期=交易。元素(“日期”)。值,
类型=transaction.Element(“类型”),
状态=事务处理元素(“状态”),
grossAmount=transaction.Element(“grossAmount”).Value,
折扣金额=事务处理.Element(“折扣金额”).Value,
FeeAmunit=交易.元素(“FeeAmunit”).值,
netAmount=transaction.Element(“netAmount”).Value,
extraAmount=交易。元素(“extraAmount”)。值,
lastEventDate=transaction.Element(“lastEventDate”).Value,
paymentMethod=来自transaction.substands中的p(“paymentMethod”)
选择p.Element(“type”).Value};
除了付款方式,一切都很好…你是在找这样的东西吗
paymentMethod = int.Parse(transaction.Element("paymentMethod").Element("type").Value)
你想让paymentMethod看起来像什么?应该是什么类型?另一种可能更有效的语法:
paymentMethod=(int)(transaction.Element(“paymentMethod”).Element(“type”))
@JimWooley:谢谢你的提示。我不知道你可以这样含蓄地施放元素。