0
Ich versuche, um die Liste des EntityTypes in einer EDMX-Datei und die folgende Abfrage gibt keine Ergebnisse zu erhalten:Warum funktioniert diese XPath-Abfrage nicht in einer EDMX-Datei?
ArbeitXmlDocument edmxFile = new XmlDocument();
edmxFile.Load(args[0]);
XmlNamespaceManager nsMan = new XmlNamespaceManager(edmxFile.NameTable);
nsMan.AddNamespace("edmx", "http://schemas.microsoft.com/ado/2007/06/edmx");
nsMan.AddNamespace("s", "http://schemas.microsoft.com/ado/2007/06/edm/ssdl");
nsMan.AddNamespace("e", "http://schemas.microsoft.com/ado/2007/06/edm");
nsMan.AddNamespace("u", "urn:schemas-microsoft-com:windows:storage:mapping:SC");
XmlNodeList entityTypes = edmxFile.DocumentElement.SelectNodes("//EntityType", nsMan); //Returns 0 nodes
XmlNodeList entityTypes = edmxFile.SelectNodes("//EntityType"); //Returns 0 nodes also
Warum tut XPath hier?
Das hat nicht den Trick gemacht, und auch keiner der anderen Namespaces –
Habe es einfach selbst ausprobiert, und es funktionierte - die einzige Änderung, die ich machen musste, war meine ssdl (s :) Namespace URI, die 'http ist : // schemas.microsoft.com/ado/2006/04/edm/ssdl'. Ich nehme an, Sie verwenden EF4, weshalb Sie eine andere URI haben? –
Ich benutze VS2008 SP1, nach der Verwendung des Schemas, das Sie getan haben, hat es funktioniert, danke! –