Как пользоваться vb.net чтобы запустить Xpath на встроенном XML-файле в надстройке Excel?


Среда Установки:

Я разрабатываю надстройку уровня приложения Excel 2010 с использованием vb.net с .NET Framework 4.


Моя цель:

  1. во время выполнения получите доступ к встроенному XML-файлу в моем проекте
  2. используйте XpathNavigator для выбора конкретных узлов по имени


Этот код работал для меня в консольном приложении:

Imports System.Xml
Imports System.Xml.XPath

        Dim nav As XPathNavigator
        Dim docNav As XPathDocument
        Dim NodeIter As XPathNodeIterator
        Dim strExpression As String

        'xmldata.xml is stored in the bin/Debug directory
        docNav = New XPathDocument("xmldata.xml")

        'Create a navigator to query with XPath.
        nav = docNav.CreateNavigator

        'For matching by Well Name
        strExpression = "/wellList/well/name[../name='GN-ALICE- 158-97-1324H-1']"

        'Select the result
        NodeIter = nav.Select(strExpression)


        Console.WriteLine("Well Name: {0}", NodeIter.Current.Value)

        'Show Results
        Console.ReadLine()


Вот где я хранил эти деньги. файл:

Справочник

Файл находится в каталоге bin / Debug


Как я могу сделать то же самое, когда XML-файл встроен в качестве ресурса проекта?

Путь_к_файлу


Не мог бы кто-нибудь предложить, как это сделать? Я был бы вам очень признателен.

1 2

1 ответ:

Чтобы решить мою проблему, я читаю XML-данные из потока:

  • Где код:

    'xmldata.xml is stored in the bin/Debug directory
    docNav = New XPathDocument("xmldata.xml")
    
  • Измените его следующим образом:

    Dim stream As System.IO.StringReader
    stream = New StringReader(My.Resources.xmldata)
    
    docNav = New XPathDocument(stream)