在用 Visual Web Developer 建立解决方案后,可在解决方案中添加工程项目和网站项目,而工程中有一项叫“Web 应用程序项目”,它和网站项目有什么区别呢? 其实他们的区别很多,方案、文件结构、编译、部署等多个方面。但我觉得有一点差异很明显。
嗯,看起来 Web 应用程序似乎没有什么优势,错了。 Web 应用程序可以很好地进行大型开发及团队合作。如果有一个文件有问题,想暂时排除在工程之外,用网站项目的话,得删除该文件或将其扩展名改个名(比如 .exclude);但 Web 应用程序则不需要,因为 Web 应用程序有两个文件(.sln、.suo)控制哪些文件进行编译,哪些文件不编译,不编译的文件,可以轻松点一下鼠标就进行排除了。 同时,由于 Web 应用程序将代码文件编译成一个 dll,非常方便进行版本控制。在部署时也比较方便。当然要注意,dll 文件被不能防止源代码外泄,同 Java 一样,ASP.NET 也是编译的中间语言,所以很容易被 Reflector 这类工具还原成源代码,一般用 Dotfuscator 这类工具将源代码进行混淆,使拿到后的源代码混乱,让人根本没心情去理什么逻辑关系,一定程度上达到保密要求。 Web 应用程序事先就将代码编译好了,所以在更新网站后,Web 应用程序很快就能进行状态工作;网站项目则需要等那么几秒钟,等全部编译好了后,才会可访问。 更详细的比较 |
|
来自: 悟静 > 《.net和asp.net》