web項目的兩個建立形式website和webapplication

來源:互聯網
上載者:User

標籤: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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.