摘要:IIS上面,/App_Cdoe 與 ASP.NET Membership API導致的錯誤狀況
日前,因應公司MIS部門對於機房主機的重新規劃(汰舊換新),客戶希望我幫一台主機更換環境。
新的機器,想當然爾,咱們一定要安裝最新的 Windows 2008 Server + MS SQL Server 2008啊!!
安裝完成以後,一切正常,倒也平安無事。
期間遇見一個狀況,後來也解了([FAQ]不允許使用目錄 '/App_Code/',因為已先行編譯應用程式。)
沒想到,測了兩天之後......竟然發覺:
網站的某一個功能, User 竟然無法登入(Login In功能),這個功能我們是自己寫的,採用了 ASP.NET的Membership API。
錯誤訊息很難懂,寫著 XXXMembership無法轉換型態為 XXXMembership
(哈囉!可以講地球語言嗎?....火星文我是看不懂的。 地球是很危險地,快點回火星吧!)
拜了幾天的咕狗大神,也沒找到類似的錯誤碼......
努力地研究了很久,發現跟上一個錯誤([FAQ]不允許使用目錄 '/App_Code/',因為已先行編譯應用程式。),有一些相關。
很多人七嘴八舌,還要我把系統改回 Windows 2003 + SQL 2000(因為以前的系統在上面跑,是正常的)
其實,事出必有因:
因為後來改版的程式,已經事先經過 Compiler了。
1. 除了 PrecompiledApp.config 這個檔案 (位於應用程式根目錄下),您可以將它更名或直接刪除即可。
2. 另外,要把 /App_Code目錄也刪除。
如果您已經在 IIS裡面,把程式設定為「應用程式」了。
那麼「應用程式」裡面的 /App_Cdoe目錄會變成禁止刪除。
必須解除 IIS的「應用程式」設定,才砍得動!
我因為不是 Windows與 IIS的系統專家,也不是網管高手。
所以這些問題,對我來說,的確很頭痛。
這是我最近四天發現的 "蠢" 心得
很蠢,所以希望各位參考一下,不要跟我一樣浪費了時間。
事實證明,這跟 OS / DB的版本無關。
還害我多浪費了一天的時間,重灌系統(Windows 2008+SQL 2008 ==降級回到==> Windows 2003+SQL 2000)
P.S.
有找到一篇微軟的文章,介紹 /App_Cdoe,大家可以參考看看:
可以將原始程式碼儲存在 App_Code 資料夾,它會自動在執行階段編譯。產生的組件可由 Web 應用程式中的任何其他程式碼存取。因此,App_Code 資料夾的工作很像 Bin 資料夾,差別在於是在此資料夾存放原始程式碼而不是已編譯的程式碼。由於 App_Code 資料夾和其在 ASP.NET Web 應用程式中的特殊狀態,讓 App_Code 資料夾可以建立自訂類別和其他只有原始程式碼的檔案,並在 Web 應用程式中使用而不必獨立進行編譯。
好久沒有放今日正妹了。
今天是教師節,我們放「今日正妹.....老師」,請看這位游泳教練(女老師),很cute喔。
http://map.answerbox.net/album.php?id=401811&bbs=2
這個老師也不錯... http://map.answerbox.net/album.php?id=401737&bbs=2
我將思想傳授他人, 他人之所得,亦無損於我之所有;
猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson
線上課程,遠距教學 (Web Form 49hr) https://dotblogs.com.tw/mis2000lab/2016/02/01/aspnet_online_learning_distance_education_VS2015
線上課程,遠距教學 (ASP.NET MVC 75~80hr) https://dotblogs.com.tw/mis2000lab/2018/08/14/ASPnet_MVC_Online_Learning_MIS2000Lab
ASP.NET MVC線上課程 第一天 免費看 (5.5小時)
寫信給我,不要私訊 -- mis2000lab (at) yahoo.com.台灣 或 school (at) mis2000lab.net
ASP.NET遠距教學、線上課程(Web Form + MVC)。 第一天課程, "完整" 試聽。
................ facebook社團 https://www.facebook.com/mis2000lab ......................
................ YouTube (ASP.NET) 線上教學影片 https://www.youtube.com/channel/UC6IPPf6tvsNG8zX3u1LddvA/
Blog文章 "附的範例" 無法下載,請看 這裡 ...... https://dotblogs.com.tw/mis2000lab/2016/03/14/2008_2015_mis2000lab_sample_download
請看我們的「售後服務」範圍(嚴格認定)。
......................................................................................................................................................
[遠距教學、教學影片] ASP.NET (Web Form) 課程 上線了!MIS2000Lab.主講
事先錄製好的影片,並非上課時側錄! 觀看影片時,有如我「一對一」跟您面對面講課。
ASP.NET MVC 5 線上教學
累積時數約 75~ 80小時...... 第一天(5.5小時)完整內容,"免費"讓您評估