在Visual Studio中選擇.NET Framework框架並選用任意模板創建一個普通的Web應用工程,毫無疑問,此時應該是能夠正常運行此工程的。 但是將工程屬性 編譯 Platform target一項中從Any CPU改成x64。 再運行工程後,頁面會出現伺服器錯誤的提示。 這是因為預設情 ...
在Visual Studio中選擇.NET Framework框架並選用任意模板創建一個普通的Web應用工程,毫無疑問,此時應該是能夠正常運行此工程的。
但是將工程屬性->編譯->Platform target一項中從Any CPU改成x64。
再運行工程後,頁面會出現伺服器錯誤的提示。
這是因為預設情況下Visual Studio調試時所用的IIS Express是32位的,只能運行同是32位的程式。
修正的方法是在工具->選項->工程與解決方案->Web工程中,將使用64位IIS Expres選項勾上。
當佈署在IIS時也可能出現類似的錯誤。
在Release模式下,將Platform target選擇為x86。發佈工程併在IIS下創建網站。瀏覽此網站時,會出現之前一樣的錯誤。
這是因為IIS預設運行的是64位的程式。
要想修正錯誤,需要在應用程式池中將網站對應的程式池的高級設置里把啟用32位應用程式
一項調整為True。
有趣的是,如果你創建Web工程時選擇的框架是.NET Core,那麼無論設置為x64還是x86,既使沒有選擇64位IIS Expres,工程也都能正常運行。