-2
我需要计数“ITEM_STATUS = 10”的(),请帮我在this.Please找到下面的图片.. XElement的特定属性cout?
我需要计数“ITEM_STATUS = 10”的(),请帮我在this.Please找到下面的图片.. XElement的特定属性cout?
堆栈溢出问题,应该表现出的努力来解决这个问题最少量。这不是免费的代码服务。
尽管如此,以下应该产生的结果您正在请求:
var count = e.Descendants("ITEM_STATUS")
.Where(el => "10".Equals((string)el))
.Count();
为什么' “10” .Equals((串)EL)'代替'(INT)EL == 10',或' (string)el ==“10”'?这个语法看起来很奇怪。 – MarcinJuraszek
@MarcinJuraszek如果文档中的任何ITEM_STATUS元素包含一个非整数值,那么''== =='会抛出一个'FormatException',所以这值得避免,除非您绝对确信每个'ITEM_STATUS '将包含一个整数值(或者如果你想要发生一个异常,如果它们中的任何一个是非整数的话)。避免使用字符串==是个人喜好,也是Java和C结转的一部分,但值得注意的是,在[某些情况下](http://stackoverflow.com/a/15090520/1945651)中, '=='可以在C#中为等效字符串生成'false'。 (续...) – JLRishe
...最后,使用'LITERAL.Equals(VARIABLE)'而不是'VARIABLE.EQUALS(LITERAL)'是对NullReferenceException的防范。在这里可能不需要,但使用谨慎的,一贯的风格并没有什么坏处。 – JLRishe