yo uso tanto extensivamente también XSL
que tienen usos muy diferentes imo
XPath es ideal para la manipulación de documentos XML wheras linq2xml es grande para el mapeo en colecciones de objetos.
En otras palabras, regularmente tengo aplicaciones que involucran a ambas.
por ejemplo, analizar csv en una estructura xml determinada casi se selecciona para xslt y xpath wheras linq2XMl le dará problemas si tiene un documento xml que tiene elementos opcionales. así que tiendo a usar xpath para realmente bloquear el formato xml para que sea explícito y para mantener mi mapeo linq2xml muy simple.
El resultado es mucho menos errores y un desarrollo mucho más rápido.
ni idea de por qué el hombre está hablando de linq2xsd ... es un proyecto descontinuado que tiene muy poca documentación. mantente alejado de eso.
Xdocument es un objeto que es realmente agradable de trabajar con ... xmldocument es uno que es solo un poco imo. Obviamente, depende de la tarea en cuestión, pero la falta de xpath 2.0 me hace tender a usarlo como un limpiador de datos y luego dejar que linq2XMl haga el trabajo real.
en lo que respecta a la búsqueda, puede hacer todo lo que hace linq2xml en xpath, lo que sucede es que, sintácticamente, prefiero usar linq2sql y jugar con colecciones fuertemente tipadas que con xpath. Es mucho más fácil volver a una fecha posterior y adaptarse. Además, no tiene que preocuparse por las diferencias de sintaxis entre las implementaciones de xpath y especialmente con las implementaciones de expresiones regulares
Este artículo es bueno. Http://www.codewrecks.com/blog/index.php/2008/09/05/mix- linq2xml-y-xpath-take-the-best-from-both/ –