.net – 这只是我吗?与XPath相比,我发现LINQ to XML有点麻烦

我是一名C#程序员,所以我无法利用VB中的酷 XML语法.
Dim itemList1 = From item In rss.<rss>.<channel>.<item> _
                Where item.<description>.Value.Contains("LINQ") Or _
                      item.<title>.Value.Contains("LINQ")

使用C#,我发现XPath比使用LINQ to XML执行多嵌套选择更容易思考,更容易编码,更容易理解.看看这个语法,它看起来像希腊语发誓:

var waypoints = from waypoint in gpxDoc.Descendants(gpx + "wpt") 
          select new 
          { 
            Latitude = waypoint.Attribute("lat").Value,Longitude = waypoint.Attribute("lon").Value,Elevation = waypoint.Element(gpx + "ele") != null ? 
                waypoint.Element(gpx + "ele").Value : null,Name = waypoint.Element(gpx + "name") != null ? 
                waypoint.Element(gpx + "name").Value : null,Dt = waypoint.Element(gpx + "cmt") != null ? 
                waypoint.Element(gpx + "cmt").Value : null 
          };

所有的转换,重的语法,NullPointerExceptions的可能性. XPath不会发生这种情况.

我一般都喜欢LINQ,而且我在对象集合和数据库上使用它,但是我第一次查询XML时又回到了XPath.

只有我吗?

我错过了什么吗?

编辑:有人投票决定关闭这个“不是一个真正的问题”.但这是一个真正的问题,清楚地说明.问题是:我误解了吗?
LINQ to XML的东西?

只要完成工作,就可以使用您感觉最舒适的东西.我使用这两种方法取决于我需要对XML做什么.听起来对你来说,你已经很好地理解了LINQ的优点以及XPath的优点.

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念