如何為asp.net網(wǎng)站項目添加子項目
更新時間:2008年10月27日 16:17:15 作者:
最近要給公司的電子商務(wù)網(wǎng)站添加個圈子的功能.網(wǎng)站功能本來就包含有新聞發(fā)布,會員管理,商品購物,后臺管理等,現(xiàn)在又要再加上圈子的功能,網(wǎng)站項目越來越復(fù)雜,每次編譯生成的dll超過100k.這樣每次修改任何一個功能中的任何一個小問題都要上傳整個dll,并導(dǎo)致整個website的首次訪問的重新編譯.
之前也曾經(jīng)想過,這些功能根據(jù)不同處于項目中的不同文件夾內(nèi),比如會員的會在member,后臺管理的會在admin文件夾,新聞的會在news文件夾.這樣的話如果vs支持按不同文件夾生成不同dll,那我每次修改不同功能的不同文件只要上傳對應(yīng)的dll就可以了,不再需要上傳整個website的dll.
不過想法是美好的,事實是殘酷的.vs并不支持這樣的功能.所以在功能直接交互和文件共享并不多的功能上,我采取了重新建立一個projects的方法,比如把后臺管理剝離出來,新建一個admin的website,這個新的projects放在website的根目錄下,然后修改文件編譯生成dll后的目錄為..\bin并且刪除項目中的web.config.編譯后訪問,呵呵,真的可以訪問了,并且達到了拆分項目的要求.倒是并不完美,還有手動修改很多設(shè)置,并且這2個項目中不能共享相同的master,和usercontrol,甚至是圖片,js等,如果直接使用相對路徑,那么視圖模式下將不能正常顯示,如果vs直接提供新建子項目的功能并能解決共享這些文件,該有多好啊.
于是通過Google,找到一篇文章http://blogs.msdn.com/webdevtools/archive/2006/07/01/652986.aspx,Creating sub-projects in IIS with Web Application Projects,不幸的是文中提到的“Web Application Projects” add-in,我Download了,but can't install!
雖然這樣的應(yīng)用程序我們無法制作,但是我們可以按照他的思路自己修改配置啊.
發(fā)現(xiàn)他的方法,跟一開始我的做法是很類似的,不過他可以共享master和user control,為什么我的不能呢?
仔細翻看了一下,發(fā)現(xiàn)原來他在子項目中創(chuàng)建了虛擬目錄比如 http://localhost/group,所以之前使用~/Group.Master,只能訪問本項目中的master,而現(xiàn)在則可以訪問根目錄中的master了,試試usercontrol,也可以了,呵呵,原理奧妙都在這個虛擬目錄中呀.
不過想法是美好的,事實是殘酷的.vs并不支持這樣的功能.所以在功能直接交互和文件共享并不多的功能上,我采取了重新建立一個projects的方法,比如把后臺管理剝離出來,新建一個admin的website,這個新的projects放在website的根目錄下,然后修改文件編譯生成dll后的目錄為..\bin并且刪除項目中的web.config.編譯后訪問,呵呵,真的可以訪問了,并且達到了拆分項目的要求.倒是并不完美,還有手動修改很多設(shè)置,并且這2個項目中不能共享相同的master,和usercontrol,甚至是圖片,js等,如果直接使用相對路徑,那么視圖模式下將不能正常顯示,如果vs直接提供新建子項目的功能并能解決共享這些文件,該有多好啊.
于是通過Google,找到一篇文章http://blogs.msdn.com/webdevtools/archive/2006/07/01/652986.aspx,Creating sub-projects in IIS with Web Application Projects,不幸的是文中提到的“Web Application Projects” add-in,我Download了,but can't install!
雖然這樣的應(yīng)用程序我們無法制作,但是我們可以按照他的思路自己修改配置啊.
發(fā)現(xiàn)他的方法,跟一開始我的做法是很類似的,不過他可以共享master和user control,為什么我的不能呢?
仔細翻看了一下,發(fā)現(xiàn)原來他在子項目中創(chuàng)建了虛擬目錄比如 http://localhost/group,所以之前使用~/Group.Master,只能訪問本項目中的master,而現(xiàn)在則可以訪問根目錄中的master了,試試usercontrol,也可以了,呵呵,原理奧妙都在這個虛擬目錄中呀.
相關(guān)文章
asp.net BasePage類+Session通用用戶登錄權(quán)限控制
判斷用戶是否登錄,常用的方法就是通過Session來控制。2010-05-05asp.net實現(xiàn)取消頁面表單內(nèi)文本輸入框Enter響應(yīng)的方法
這篇文章主要介紹了asp.net實現(xiàn)取消頁面表單內(nèi)文本輸入框Enter響應(yīng)的方法,結(jié)合實例形式分析了asp.net文本框Enter響應(yīng)的原理與取消Enter響應(yīng)的相關(guān)實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-11-11輕量級ORM框架Dapper應(yīng)用之實現(xiàn)In操作
這篇文章介紹了使用Dapper實現(xiàn)In操作的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-03-03ASP.NET中MVC從后臺控制器傳遞數(shù)據(jù)到前臺視圖的方式
這篇文章主要介紹了ASP.NET中MVC從后臺控制器傳遞數(shù)據(jù)到前臺視圖的方式,以實例形式較為詳細的分析了asp.net中MVC數(shù)據(jù)傳遞的具體實現(xiàn)方法,需要的朋友可以參考下2014-12-12合并兩個DataSet的數(shù)據(jù)內(nèi)容的方法
合并兩個DataSet的數(shù)據(jù)內(nèi)容的方法,需要的朋友可以參考一下2013-03-03