2013-02-21 2 views
1

У меня есть функция, которая работает в среде разработки, но мне нужно изменить путь, чтобы он правильно разрешался на хост-серверах.Решение пути к файлу внутри функции

Эта строка кода;

doc.Load("H:\Website_Sep2012\OtherDataFiles\dataXML.xml") 'this needs to be changed to the server path 

в пределах этой функции

Public Shared Function GetList(ByVal nodestring As String) As List(Of String) 
    Dim doc As New XmlDocument() 

    'Load XML from the file into XmlDocument object 
    doc.Load("H:\Website_Sep2012\OtherDataFiles\dataXML.xml") 'this needs to be changed to the server path 
    Dim root As XmlNode = doc.DocumentElement 

    'Select all nodes with the tag paramter indicated by the nodestring variable 
    Dim nodeList As XmlNodeList = root.SelectNodes(nodestring) 
    Return (From node As XmlNode In nodeList Select node.InnerText).ToList() 
End Function 

Заменив строку с Server.MapPath("~/OtherDataFiles\dataXML.xml") не работает как сервер недоступен в этой области. Любые идеи, как решить этот путь

ответ

2

Сервер всегда может быть достигнуто, как это:

string filePath = System.Web.HttpContext.Current.Server.MapPath("~/OtherDataFiles/dataXML.xml"); 
doc.Load(filePath); 

Если внутри библиотеки проекта класса вы можете просто добавить ссылку на сборку System.Web.

Смежные вопросы