Как обработать путь на лазури для XmlDocumentationProvider
Я использую Azure для развертывания моих новых веб-API, я новичок в развертывании на IIS и Azure.
Я добавил свои веб-API на Azure как веб-приложение, и оно работает нормально, пока я не добавил документацию для функций каждого API. После добавления описания я раскомментирую строку ниже из HelpPageConfig.cs.
config.SetDocumentationProvider(new XmlDocumentationProvider(HttpContext.Current.Server.MapPath("~/App_Data/XmlDocument.xml")));
Он работает локально, и я могу видеть все описания, но когда я опубликовал его на Azure, я получаю сообщение об ошибке,
Could not find a part of the path 'D:\home\site\wwwroot\App_Data\XmlDocument.xml'.
URL сайта: http://mejodo.azurewebsites.net/
Нужно ли менять путь?
Файл уже создан в моей системе в каталоге D:\home\site\wwwroot\App_Data.
Какие изменения мне нужно сделать, чтобы это работало?
6 ответов
Я была такая же проблема. Для меня файл был сгенерирован. Пожалуйста, следуйте инструкциям ниже.
- Нажмите на показать все файлы в обозревателе решений.
- Проверьте, есть ли у вас файл в папке App_Data
- Если у вас есть файл, щелкните правой кнопкой мыши и включите его в свой проект.
- Теперь создайте и опубликуйте в Azure.
Я надеюсь, что это будет работать. Спасибо
В моем случае XmlDocument.xml необходимо было добавить в Visual Studio в папку App_Data в решении с помощью "Добавить существующий элемент".
Просто добавьте в ваш проект новую папку "App_Data" с XmlDocument.xml и опубликуйте
Когда вы говорите, что у вас есть веб-API на Azure как веб-приложение, вы имеете в виду, что они являются приложениями на сайте? Если да, то я думаю, что вам не хватает имени приложения в пути к файлу XML.
Попробуйте перейти на mejodo.scm.azurewebsites.net > консоль отладки> powershell, чтобы увидеть точную структуру папок....
Вы должны убедиться, что строка вHelpPageConfig.cs
файл вArea>HelpPage>App_Start
папка. то есть в методе регистрации эта строка
config.SetDocumentationProvider(new XmlDocumentationProvider(HttpContext.Current.Server.MapPath("~/App_Data/XmlDocument.xml")));
это раскомментировано
затем вы должны убедиться, что в конфигурации проекта, в файле документации сборки XML, это тот же путь, что и в вышеупомянутой строке.
Когда вы публикуете XML-файл, он попадает в папку bin, поэтому измените "D:\home\site\wwwroot\App_Data\XmlDocument.xml".
в
'D:\ главная \ сайт \ Wwwroot \ Bin\XmlDocument.xml.
и это должно работать.