0

我正在将 XML 文档解析为 ac# 项目,以检查是否存在名为“Feature”的元素。在 c# 中,我使用 Feature Element 中存在的内容来确定是否应该运行 if 语句。

XML

<Projects>
 <Project>
   <Name>Test</Name>
    <Feature>AutoDev;AutoRev</Feature>
 </Project>
</Projects>

C#

var feature = (from project in XDocument.Load(xmlPath).Descendants("Project")                                     
where project.Element("Name").Equals(Project)                                     
select project.Element("Feature").Value).Single().Split(';');

if (names.Contains("Test"))
      //then load ticket variables....
   if (feature.Contains("AutoDev"))
      //then do this....

现在我收到一个错误: 序列不包含任何元素

加载 Feature 时建议使用 any 方法来检查数组中是否存在元素。不知道如何实现这一点。

4

2 回答 2

3
project.Element("Name").Equals(ev.PortfolioProject)

应该

project.Element("Name").Value.Equals(ev.PortfolioProject)
                        ^
于 2013-09-25T14:44:08.600 回答
1

我想你错过.Valueproject.Element("Name")

尝试这个:

var feature = (from project in XDocument.Load(xmlPath).Descendants("Project")                                     
where project.Element("Name").Value.Equals(ev.PortfolioProject)                                     
select project.Element("Feature").Value).Single().Split(';');
于 2013-09-25T14:44:17.223 回答