讓iis7可以執行wcf的問題解決方式
為了要讓 iis可以執行wcf程式
看來不是像 web services那麼簡單
我所使用的是vs2010 rc版+ win7 的iis7
但記得為了不要像我這樣搞了很久,最好前置動作都先準備好(例如iis)再安裝vs2010
否則會像我一樣到處想辦法解決一些奇怪的問題!
安裝vs2010前,請先確認已經在windows的新增/移除中的windows功能有安裝了iis(最好全選)
及wcf相關的功能,如下圖
然後再裝vs2010應該就不會像我這樣反過來做時那麼麻煩
若有跟我一樣是安裝 vs2010後,再安裝iis的話,你可能在執行時會出現下圖
可以參考下列網址,這裡有解決方案
http://blogs.msdn.com/wcftoolsteamblogcn/archive/2009/12/14/iis-wcf-setup.aspx
重點整理一下,處理方式如下
1. 正確註冊安裝ASP.net
打開Visual Studio命令行提示工具(Start->All Programs->Visual Studio->Visual Studio Tools->Visual Studio Command Prompt, 如果你的OS是Windows Vista及以後的版本,你需要以管理員身份打開),運行”aspnet_regiis.exe -i”。在命令運行完成後重新嘗試你的網站。
2. 在IIS中配置正確的Application Pool
用vs2010開發的wcf所建立應用程式網站的應用程式集區要設定為asp.net v4.0,別設錯了
確定其中的.NET Framework版本是v4.0.xxxxx。如果不是,這也許就是你看到錯誤頁面的原因。更改成其他的使用.NET Framework v4.0的Application Pool。
3.執行cmd
C:\Windows\Microsoft.NET\Framework\v4.0.30128\servicemodelreg -i
再次執行iis中的 wcf站台,記得選取副檔名為svc的哦,如下圖,就是成功了