標籤:des winform blog code http tar
前言
在利用VS2010建立web項目的時候,會有兩個選擇。可以選擇直接建立website網站,還可以選擇使用
webapplication應用程式。剛剛接觸web開發,看到這兩個就疑惑了,既然是都可以,那為什麼有兩個呢?這樣
的分開,肯定是有它的道理的。下面是我對這個問題進行的一些總結,都是從網上找的一些資料,與大家分
享。
website
中文名稱網站,是指在互連網上,根據一定的規則,使用HTML、ASP等代碼語言製作的用於展示特
定內容的相關網頁的集合,有可供管理員操作的後台及使用者使用的前台。從網上查到的很多資料中,website
是為了適應相容從ASP轉過來的開發人員的習慣而存在的,例如:不需要建立命名空間、cs修改代碼後不需要
重啟就可以直接使用。
1.優點
a.動態編譯該頁面,馬上可以看到效果.不需要重新編譯整個項目;直接用重新整理就能夠直接在瀏覽器中看到
更改後的效果。這也是website的最大的優勢。
b.可以每個頁面產生一個程式集,可以把頁面也編譯到程式集中
c.可以把一個目錄當做一個Web應用來處理,直接複製檔案就發行就緒,不需要專案檔
2.缺點
a.你可以在項目開發時候建立各種檔案夾來辨別各種檔案,但是在發布後產生的bin檔案比較亂難以管。Bin
檔案都是一些項目儲存後的程式集的集合。
Webapplication
同樣webapplication是微軟為了讓程式員更好從winform過渡到web開發而保留的。 是由工程檔案組織網站的,有
一些特殊的檔案夾bin、App_code、資源檔、主題檔案夾等。如果用記事本開啟工程檔案,可以看到工程中的
檔案都在其中。你可以在visualstudio中指定每個檔案編譯時間的模式,比如是代碼檔案(將進行編譯)、網站內
容檔案(不編譯,即使是.cs檔案)、資源檔等等。另外可以指定每個檔案發布時是否被排除。項目編譯時間一般
根據namespace不同把可編譯的檔案都編譯進相應的assembly檔案(dll檔案).
1.優點
a.網站編譯速度快,使用了增量編譯模式,僅僅只有檔案被修改後,這部分才會被增量編譯進去。
b.產生的程式集編譯成一個dll,便於管理,bin目錄下的檔案不會太多,什麼東東多了就不好管理了。
c.可以指定網站項目產生單一程式集,因為是獨立的程式集,所以和其他項目一樣可以指定應用程式
集的名字、版本、輸出位置等資訊
d.可以將網站拆分成多重專案以方便管理
e.可以從項目中和原始程式碼控制中排除一個檔案
f.支援VSTS的Team Build方便每日構建
g.更強大的代碼檢查功能,並且檢查策略受原始碼控制
i.可以對編譯前後進行自己規定的處理
j.直接升級使用VS2003構建的大型系統
website和webapplication不同點
1、web應用程式Default.aspx顯示有兩個原有檔案及Default.aspx.cs和efault.aspx.designer.cs;Web網站
Default.aspx顯示有一個原有檔案Default.aspx.cs。
2、web應用程式有重建和發布兩項;Web網站只有一個發布網站。
3、web應用程式和一般的winform沒有什麼區別都有引用的是命名空間等;Web網站在引用後出現一個
bin檔案夾那裡存放dll和pdb檔案。
4、web應用程式可以作為類庫被引用;Web網站則不可以作為類庫被引用。
5、web應用程式可以添加ASP.Net檔案夾中不包括bin、App_Code;Web網站可以添加ASP.Net檔案夾包
括bin、App_Code。
6、web應用程式還可添加組件和類;Web網站則沒有。
它們之間的轉換
1.將website轉換為webapplication:
網上傳說直接可以從右鍵轉換為website,反正我是沒有找到。只能自己先建立要給web應用程式將所
需網站內容添加進去
2.將webapplication轉換為website:
刪除所有*.designer.cs
將*.aspx、*.ascx、*.master分頁檔中的Codebehind="FileList.aspx.cs" 批量替換成
CodeFile="FileList.aspx.cs"
總結
簡單來說,website適合簡單、小型的網站項目。web適用於大型的網站項目。這是我在總結這些知識中
看到最多的一句話。另外,在建立website項目,大家不知道有沒有發現這個項目沒有sln檔案,其實也不是沒有
只是另外放在了電腦中的庫中的文檔中的vs2010文檔中了。這樣我們開啟項目只能是在vs開啟的環境下,打
開網站讀取整個檔案目錄啦。而webapplication直接存在sln檔案,直接開啟就可以了。有人說了,website的sln複
制過來,能不能開啟呢?答案是不可以的,可能由於一些路徑和配置資訊的原因,開啟之後項目不能後完全打
開。
以下推薦的一些詳細介紹的連結,有興趣的可以自己再深入研究一下
http://blog.csdn.net/dongxiaohui2008/article/details/8081615
http://blog.csdn.net/zyyjc/article/details/6150231
http://bbs.csdn.net/topics/110051268
來源:http://blog.csdn.net/cfl20121314/article/details/10034835