在VS2003中以ClassLibrary工程的方式管理Web工程.
盡管目前已經基本不用 VS2003 作為主要開發工具了,但是今天打開 SubText 卻發現它的 Web 工程卻是用 ClassLirary 形式的工程來管理的。也就是說不需要在 IIS 創建一個 WEB 工程虛擬目錄映射才能找開 WEB 工程,這樣就會給我們帶來極大的方便。在 VS2005 的 Web Site 也解決了這個問題,但是卻帶來了其實的問題,比如沒有項目文件,無法很好地管理文件的排除與包含問題。
通過 SubText 項目中的 AspNetWithoutWebProjects.txt 介紹的地址( http://pluralsight.com/wiki/default.aspx/Fritz.AspNetWithoutWebProjects ),了解到在 VS2003 中可以通過修改一個環境文件和項目文件,可以達到就可以實現用 ClassLirary 的工程管理方式來管理 WEB 工程。這里記錄下與大家共享。
打開 VS2003 的安裝目錄,并轉到 VC#\CSharpProjectItems 目錄下,可以看到還有兩個子目錄 WebProjectItems 和 LocalProjectItems ,先打開 WebProjectItems 下的 WebProjectItems.vsdir 文件 拷貝下:
CSharpAddWebFormWiz.vsz<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
CSharpAddWebServiceWiz.vsz
CSharpAddWebUserControl.vszdd
CSharpAddWebDataForm.vsz
這 4 行的完整代碼。
然后轉到 LocalProjectItems目錄 ,打開 LocalProjectItems.vsdir 文件把上面拷貝的內容粘貼進來。
這一步操作的目的是讓 ClassLirary 工程的右鍵添加新項的菜單中有添加 WebForm , Web 引用, WebUserControl, 等這些項,默認情況下是沒有這些的,只有添加 WinForm 等不是 Web 工程特有的菜單。
對環境文件的修改這樣就行了。接下來就要修改 Web 工程本身的文件。打開項目工程 (.csproj) 文件,把: ProjectType = "Web" 改為 ProjectType = "Local" 。然后刪除工程目錄下的 .webinfo 文件,否則工程將無法打開。
??? 如果工程被包含在一個解決方案文件中,要讓解決方案能正常打開,需要打開.sln把對WEB工程改成普通工程的引用。如:
?????Project("{FAE04EC0<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /?>-301F-11D3-BF4B-00C04F79EFBC}") = "WebApplication133",????
???????????"http://localhost/WebApplication133/WebApplication133.csproj",?????????????
?????????? "{39CB37A5-F735-4684-B5DA-DD355B683090}"??
???改為:
???? Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebApplication133",?????
????????????????? "WebApplication133.csproj",??????
????????????????? "{39CB37A5-F735-4684-B5DA-DD355B683090}"
??????也就是把URL地址去掉就行了。
??????這樣Web工程就可以以ClassLirary的方式打開了,但如果要正確編譯,甚至調試,還必須保證,輸出路徑設為:bin\? ;
把調試模式改為URL,單擊“應用”,設置對應的啟動URL就可以正常調試了。
(這里注意一點,沒有點“應用”啟動URL的輸入框是灰色的不能輸入。)
??????一個小技巧,這里做一下筆記。
總結
以上是生活随笔為你收集整理的在VS2003中以ClassLibrary工程的方式管理Web工程.的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Office远程代码执行漏洞补丁(905
- 下一篇: 创建一个ASP通用分页类(完整版)