简体   繁体   English

给字符串变量赋值

[英]Assigning value to string variable

I'm trying to parse an xml file for the value of an element and then assign that single value to a variable. 我试图解析一个元素的值的xml文件,然后将该单个值分配给一个变量。 I understand that I can do this: 我知道我可以这样做:

XDocument xdoc = XDocument.Load("filename");
string someName;  
var name = from n in xdoc.Descendants("name")
           select (string)n;

foreach(var n in name )
{
   someName = n;
}

My question is how can I do the same thing, but without a foreach loop? 我的问题是如何做同样的事情,但是没有foreach循环?

string someName = (string)xdoc.Descendants("name").First();

如果您的xml文件中只有一个name元素,则可以使用@abatishchev解决方案(如果元素可能丢失,则可以使用FirstOrDefault而不是First ),或者可以使用XPath查询:

string someName = (string)xdoc.XPathSelectElement("//name");

如果您知道name只有一个元素,则可以这样进行:

someName = name.Single();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM