前言

在利用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

转载于:https://www.cnblogs.com/pangblog/p/3266516.html

web项目的两个创建形式website和webapplication相关推荐

  1. IDEA中如何将Web项目导出成war包形式

    前言 之前使用Eclipse直接export就能将web项目导出成war包形式,IDEA中则需要简单配置一下 详解 1.首先选择你要打包的项目,然后点击File–>ProjectStructur ...

  2. IDEA中创建Maven Web项目(两种方式)

    IDEA中创建Maven Web项目 一.使用骨架(项目模板)创建Maven Web项目 二.不使用骨架直接创建 一.使用骨架(项目模板)创建Maven Web项目 选择Web项目骨架,创建项目 删除 ...

  3. web项目结构介绍及创建Maven web项目

    工具:IDEA旗舰版2021.3.1(社区版不太方便,亲测) 一.web项目结构介绍 首先就是这样的结构 projectname src main java                      ...

  4. idea 创建java web项目_使用IDEA创建javaweb项目

    IDEA是程序员们常用的java集成开发环境,也是被公认为最好用的java开发工具,关于IntelliJ IDEA设置的方法和IntelliJ IDEA使用技巧的相关知识们在前面的文章中也有学习过,那 ...

  5. Tomcat发布Web项目的两种方式

    1.可以利用myeclipse的deploy功能会自动把项目拷贝到配置好的Tomcat/webapps目录中. 只需配置好web.xml中的<servlet>即可. 2.还可以在Tomca ...

  6. 荐 Intellij IDEA创建Maven Web项目(带有webapp文件夹目录的项目)

    转载自:点击打开链接 在创建项目中,IDEA提供了很多项目模板,比如Spring MVC模板,可以直接创建一个基于Maven的Spring MVC的demo,各种配置都已经设定好了,直接编译部署就可以 ...

  7. Java web 开发填坑记 2 -如何正确的创建一个Java Web 项目

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72566261 本文出自[赵彦军的博客] Java web 开发填坑记 1-如何正确 ...

  8. 利用go语言创建web server的两种方式

    相比于java/c#的mvc框架,go语言写web项目及其简单,创建一个web只需要简短的几行代码就可以实现功能: package mainimport "net/http"fun ...

  9. eclipse tomcat新建一个_Javaweb07-Eclipse自动创建动态web项目

    学习笔记是参考的how2j 使用Eclipse创建Dynamic Web Project 前面的web项目都是通过手动创建的,现在使用eclipse EE自动创建动态web项目,熟悉一下创建流程,仍旧 ...

最新文章

  1. MAVEN创建并打包web项目
  2. android打印json对象,android之json数据过长打印不全问题的解决
  3. 2008不可错过的好莱坞电影
  4. PHP json_encode 中文乱码
  5. python encode函数_关于字符串:在python中使用unicode()和encode()函数
  6. 疫情下的创业品牌如何逆风翻盘?
  7. 编写程序把一个保存有二进制小数的字符数组转换为浮点数
  8. Linux服务器SMB服务挂载目录
  9. Python爬取文件的11种方式
  10. STM32网络之DMA控制器
  11. Unity粒子系统——简易特效制作(二)
  12. html css 分页样式,css中分页样式
  13. SELECT TOP 100 PERCENT
  14. PCB板不同材质区别
  15. JAVA与C语言的区别之我见
  16. 当你的游戏道具,被做成了生意......
  17. 【系列】重新认识Java——基本类型和包装类
  18. 白天 996, 我还能晚上669!
  19. golang-math实用小技巧
  20. 基于Python3(Autosub)以及Ffmpeg配合GoogleTranslation(谷歌翻译)为你的影片实现双语版字幕(逐字稿)

热门文章

  1. OpenFoam2.4.0 cannot find input file: `contrib/dist/mofed/debian/changelog解决方案
  2. c语言指针输出两个数的最大值和最小值,并求和,有些不清楚这样写为什么不行。
  3. C++Primer:字面值常量类调用函数错误(p268书中示例报错)
  4. linux, configure --prefix=/有什么用
  5. 判断手机号码是否符合要求
  6. 鸢尾花分类_K近邻(分类通用 数据挖掘入门与实践-实验4)
  7. 概率论-3.4 多维随机变量的特征数
  8. 概率论-3.1 多位随机变量及其联合分布
  9. ExitInterface
  10. 面向 Java 开发人员的 Scala 指南: 深入了解 Scala 并发性