var q = from child in doc.Descendants("level")
where (int)child.Attribute("id") == 55
select (string)child.Element("Points").**Value.ToString()**;
我想在执行此查询后将q作为类型字符串。即使保留了额外的粗体线,这也给了我一些IEnumerable类型。
好吧,让我这样说吧。我想在不运行时抛出任何错误的情况下进行上面的查询,如下所示。
string q = from child in doc.Descendants("level")
where (int)child.Attribute("id") == 55
select (string)child.Element("Points");
任何帮助?
答案 0 :(得分:4)
var q = (from child in doc.Descendants("level")
where (int)child.Attribute("id") == 55
select (string)child.Element("Points")).FirstOrDefault();
答案 1 :(得分:2)
答案 2 :(得分:0)
即使结果包含单个记录,查询也将返回IEnumerable。试试这个 -
if q.count() > 0
var singleQ = q.First();
或者,如果您确定至少会有一条记录,那么就这样做 -
string q = (from child in doc.Descendants("level")
where (int)child.Attribute("id") == 55
select (string)child.Element("Points")).First();