不知道這個(gè)題目大家能不能看明白。
在較大項(xiàng)目里面(使用多層架構(gòu)),如果web層只有一個(gè)解決方案,很多人來(lái)開發(fā),簽入簽出的非常麻煩,獲取、編譯、發(fā)布都是非常耗時(shí)間的。所以想問(wèn)能不能有這種方式,在同一個(gè)解決方案下面,根據(jù)不同的模塊劃分多個(gè)web項(xiàng)目,這樣各自開發(fā)、編譯、發(fā)布就非常方便。
之前在論壇發(fā)過(guò)一個(gè)帖子,
http://topic.csdn.net/u/20100720/14/674998cd-2950-4e94-adaa-a8f006539e02.html
根據(jù)帖子里有個(gè)朋友回復(fù)的,我嘗試著建立了一下。
步驟是這樣的。先建立一個(gè)網(wǎng)站,然后在網(wǎng)站里面新建3個(gè)文件夾,然后針對(duì)這3個(gè)文件夾建立web應(yīng)用程序。所有的圖片、腳本、css等資源放到web網(wǎng)站的目錄下。其它3個(gè)web應(yīng)用程序調(diào)用。不過(guò)測(cè)試了下最后是失敗的,如下圖所示,
當(dāng)web網(wǎng)站下面的default.asp里面連接price工程里面的webfrom1.asp頁(yè)面的時(shí)候會(huì)報(bào)錯(cuò)。
不知道大家有沒(méi)有這方面的經(jīng)驗(yàn),或者思路。給分享分享。先謝過(guò)啦!
我現(xiàn)在采用了web網(wǎng)站的形式建立項(xiàng)目。新建一個(gè)web網(wǎng)站。然后在網(wǎng)站里面新建3個(gè)工程的文件夾,然后在這3個(gè)文件夾下面新建web網(wǎng)站。然后把這3個(gè)文件夾里面的web.config刪掉。這樣就1個(gè)主3個(gè)附就可以共用web.config,session也是共用的。但是發(fā)布的時(shí)候來(lái)問(wèn)題了。先發(fā)布主項(xiàng)目,3個(gè)子項(xiàng)目也就隨之發(fā)布了。但是如果只想發(fā)布子項(xiàng)目的話,就來(lái)問(wèn)題了。生成的bin下面的dll名字和原來(lái)的主項(xiàng)目發(fā)布的時(shí)候不一樣。這樣程序就出問(wèn)題了。不知道這樣建立工程之后如何發(fā)布才能將子項(xiàng)目單獨(dú)發(fā)布!
在建站開始規(guī)劃好自己的網(wǎng)站,不知道lz為什么多人開發(fā)簽入遷出會(huì)有影響嗎?
有文件追加,追加完了,馬上上傳,然后再進(jìn)行Coding,不知道有什么麻煩的。重要的是規(guī)則的建立。
以前做比較大的項(xiàng)目,可以分成多個(gè)解決方案,每個(gè)小組開發(fā)自己的就行。共通的部分放在vss上采用鏈接的方式供大家使用。
Demo.Web (Web Application)
Admin => 文件夾
Demo.Web.Admin (Web Application)
Demo.Web添加Demo.Web.Admin的項(xiàng)目引用。
如果碰到幾個(gè)應(yīng)用中公用的頁(yè)面怎么處理呢?還有用戶控件也是公用的.
會(huì)造成兩Demo.Web.Admin.dll 和Demo.Web,有重復(fù)的類嗎?
我遇見的項(xiàng)目結(jié)構(gòu)是前臺(tái)和后臺(tái)是獨(dú)立的項(xiàng)目,和你的需求差不多。如果要建立,Price項(xiàng)目的文件夾必須在Web項(xiàng)目下,這樣可以共用一個(gè)Web.Config文件,兩個(gè)也可以分別的編譯。具體可以參考Discuz!NT,它就是這樣的結(jié)構(gòu)。
建立多個(gè)WebApplication項(xiàng)目吧,然后不同的項(xiàng)目設(shè)置成編譯成不同的dll文件,各自的項(xiàng)目各自放一個(gè)文件夾.發(fā)布的時(shí)候,把不同項(xiàng)目的dll文件都放到bin里去就可以了.
比如建立Member項(xiàng)目,然后再在項(xiàng)目里建立Member的文件夾,Member相關(guān)的aspx文件就往里放,項(xiàng)目設(shè)置編譯成Member.dll
再建立Shopping項(xiàng)目,項(xiàng)目里同樣建立一個(gè)Shopping文件夾,Shopping相關(guān)的文件就放在這個(gè)文件夾里,dll當(dāng)然也是叫Shopping.dll啦.
最終發(fā)布的時(shí)候,發(fā)布到主項(xiàng)目Website時(shí),只要把Member.dll跟Shopping.dll放到website的bin文件夾就可以了,對(duì)應(yīng)的頁(yè)面文件,把對(duì)應(yīng)文件夾里的文件發(fā)布到website就可以了.
把你的web層改成WebApplication項(xiàng)目試試
搞什么,將解決方案Down下來(lái)后將自己不復(fù)雜且沒(méi)有依賴關(guān)系的項(xiàng)目都Unload了。不就完了嘛。需要該某個(gè)Unload的項(xiàng)目就點(diǎn)Reload加載進(jìn)來(lái)。這樣編譯發(fā)布什么不就很快樂(lè)。
聯(lián)系客服