WCF发布到IIS7问题的解决方案
今天用VS2010開發了一個WCF服務進行一個簡單測試,沒想到這點小事竟然折騰了我2個小時。
為避免其他兄弟遇到相同的問題少走彎路做一下總結。
操作系統:Windows7 旗艦版
開發環境:VS2010 .NET Framework4.0 ASP.NET4.0
第一步:檢查Windows7中IIS是否安裝了必要的組件
方法:控制面板->程序和功能->打開或關閉Windows功能
以下圖片中標注的功能Windows7默認不會安裝的
?
第二步:檢查IIS的配置
系統必備安裝完成后打開IIS服務管理器,點默認網站,雙擊“處理程序映射”如下圖
?檢查一下下圖中紅色標注部分是否已經存在,否則WCF服務是無法調用的。不幸如果沒有找到這幾個"兄弟"的話方法如下
安裝注冊WCF組件
WCF沒有正確的在IIS中注冊也許是導致看到錯誤頁面的最常見原因。如果你在安裝Visual Studio后才安裝IIS, 那么你在IIS托管WCF服務中,就很可能遇到這樣的問題。打開Visual Studio命令行提示工具(開始->所有程序->Visual Studio 2010->Visual Studio Tools->Visual Studio?命令提示, 如果你的OS是Windows Vista 、Windows7及以后的版本,你需要以管理員身份打開),運行” ServiceModelReg.exe –ia”。 命令完成后再看看
然后配置一下應用程序池.NET Framework的版本為4.0默認為2.0
可能出現的錯誤無法識別的屬性“targetFramework”。
?最后說說VS2010中WCF的發布遇到的問題
1.選擇WCF項目右鍵選擇發布在下圖設置對話框中注意紅色標注文本框的填寫方法
如果直接發布到名為"Service"(這個根據要求自行定義名稱)的網站不需要填寫/Service前面的部分只需要填寫Service
如果要發布到默認網站上需要在前面填寫Default Web sit/Service 有空格.而且Service目錄已建立。系統提示的什么“默認網站/MyApp”是扯淡的,如果你覺得名稱太長,可在IIS管理器中重命名默認網站的名稱。
常出現的問題是無法找到Service站點
?
發布成功后可能出現的問題
出現這個問題"svc-Integrated”在其模塊列表中有一個錯誤模塊“ManagedPipelineHandler”
打開Visual Studio命令行提示工具(開始->所有程序->Visual Studio 2010->Visual Studio Tools->Visual Studio?命令提示, 如果你的OS是Windows Vista或Windows7及以后的版本,你需要以管理員身份打開),運行”aspnet_regiis.exe -i”。在命令運行完成后重新嘗試你的網站。
大功告成!
?
轉載于:https://www.cnblogs.com/allexw/archive/2011/04/12/2014017.html
總結
以上是生活随笔為你收集整理的WCF发布到IIS7问题的解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (译)如何使用cocos2d制作基于ti
- 下一篇: IIS 7.0的集成模式和经典模式