0
每次我使用發佈版本發佈Web部署包時我調用Web API時會出現此錯誤;爲什麼從發佈構建中排除XML文檔如此困難?
HTTP 500內部服務器錯誤
找不到文件 'C:\ SolutionDir \ PROJECTDIR \ BIN \ AssemblyName.xml'
這裏是我部署到服務器時執行的步驟。
- 在Visual Studio 2013右鍵單擊項目,然後選擇
Publish...
- 檢查我很高興我的發佈配置文件,然後單擊
Publish
。 - 找到我的Web API項目中的Deploy文件夾,並將其複製到目標(加上以前版本的檢查備份)。
- 從我希望部署到的服務器打開Internet Information Server並選擇我希望部署的應用程序,然後右鍵單擊選擇
Deploy -> Import Application...
。 - 繼導入應用程序包嚮導之後,選擇我的部署包並檢查任何設置,然後再單擊
Finish
。
在此過程之後,我嘗試使用Fiddler測試Web API並收到上述錯誤。我嘗試了各種方法,但到目前爲止沒有任何工作,我可以使其工作的唯一方法是將XML文件從項目的Debug版本複製到服務器上的bin
文件夾中。
我不明白的是我不應該這樣做才能使它工作,爲什麼Visual Studio/Web部署堅持存在XML?
解決方案我已經嘗試過
- A: How to prevent the copy of XML documentation files in a release mode build?
- A: Preventing referenced assembly PDB and XML files copied to output
- A: How to prevent Visual Studio from 「publishing」 XML documentation files in web projects?
這很有趣,因爲項目確實使用'HelpPage',可能會導致它失敗,並會提供反饋。 – Lankymart