發表文章

目前顯示的是 三月, 2011的文章

網站從IIS6.0移轉至7.0後除錯經驗-2

圖片
今天同事又遇到我自己也覺得奇怪的問題,執行程式出現不認得System.web.extension的區段網站也確認是使用Framework4.0,照理說4.0會繼承C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config 的設定,所以在自己網站ConfigSection是不用設定的,找了相關方法都無法解決,最後索性將machine.config屬於System.web.extension的區段 Copy過來。果然執行後就正常了,所以此篇....待更正確解答=.=

網站從IIS6.0移轉至7.0後除錯經驗-1

圖片
前言將原本在Win2003的網站移至WIN2K8 IIS7.0後,出現的一些錯誤,排除方法整理如下:錯誤1.httpModule及httpHandler要移至system.webserver底下解決方法: 透過命令自動將組態作移轉動作,步驟如下1.到命令提示字元2.cd C:\Windows\System32\inetsrv3.appcmd migrate config "Default Web Site/MyWeb" Ps:站台/應用程式名稱錯誤2.ASP.NET尚未安裝或安裝不完整由於網站的Frameowrk是使用4.0,所以我先到IIS的功能畫面進入IASPI及CGI限制看4.0是否有啓用結果發現4.0雖已安裝但未進行啓用,如下圖解決方法: 透過命令啓用4.01.到命令提示字元2.cd C:\Windows\Microsoft.NET\Framework\v4.0.303193.aspnet_regiis /ir,執行後如下圖錯誤3.Module的Key重複解決方法:在iis最上層的設定有UrlRoutinModule-4.0及ScriptModule-4.0所以若網站是設在[預設的網站]的子應用程式,則需將此2個Module拿掉或更名

[WCF-REST]Cilent端叫用不使用服務參考

圖片
前言WCF中的REST服務,最令我覺得特別的是Client開發端可以不用[服務參考],就可以直接透過Uri去作存取,但麻煩的是Client端直接使用Uri叫用時就要知道要傳什麼樣的Url Format以及回傳什麼樣的格式(例:xml、json...),萬一服務端的設定改了,在Client是無法在設計時期知道的,如下範例WCF端Client:使用WebRequest取回Stream的資料並作反序列化回User物件上述若WCF端改了參數,則Client端無法知道,當然你也可以使用[服務參考]產生WCF參考來解決,如下圖而若你不想用[服務參考]的話,另外一種作法就是讓Clinet端也去實作與WCF服務相同的介面。範例說明1.專案架構2.共用端程式,新增一個共用介面IMyWCF3.WCF服務端程式,實作IMyWCF回傳使用者物件WCF組態設定4.Client端程式
透過實作ClientBase及共用層的IMyWCF來叫用WCFClient端組態設定執行程式寫的不清楚的地方、敬請見諒。範例下載http://cid-fab913153ae2ed86.office.live.com/self.aspx/.Public/Code/WCF/WcfRestSampleDemo.rar參考文章http://www.switchonthecode.com/tutorials/creating-a-rest-client-using-wcfhttp://www.dotblogs.com.tw/regionbbs/archive/2010/03/29/vs2010.wcf.4.rest.service.expose.aspx