2009-02-11 48 views
9

我刚刚开始使用一个cms(N2),它有一个使用vs2008中的网站项目模板的模板基本实现。我注意到编译它比使用我更喜欢的Web应用程序项目花费的时间要长。网站项目与Web应用程序 - 哪个更好?

我的问题是:

  1. 为什么它似乎需要更长的时间来编译?
  2. 哪个更好用?
  3. 我应该将其转换为Web应用程序吗?

我很抱歉,如果这是重复的,但我找不到类似的问题。

干杯

+0

看看这个问题:http://stackoverflow.com/questions/475938/what-is-the-difference-between-web-application-and-website-in-asp-net – M4N 2009-02-11 22:16:56

+0

不,刚才最近忙于工作,没有对SO时间进行任何整理......现在全部完成:-) – WestDiscGolf 2009-02-25 08:50:09

+0

[ASP.NET Web Site或ASP.NET Web Application?]的可能重复(http://stackoverflow.com/questions/398037/asp-net-web-site-or-asp-net-web-application) – 2013-06-04 00:40:26

回答

10

主要区别是:

Web应用程序项目一切都是预编译所有的代码隐藏页将被编译成一个.dll ----在网站项目项目中的任何内容都是预编译的,编译器将编译所有内容以确保它是有效的,但是没有编译的页面被上传。当用户第一次尝试访问该网站时,每个页面都被编译到它自己的dll中。这意味着在网站项目中,您可以上传一个代码隐藏文件。

命名空间 - 在Web应用程序项目命名空间默认情况下,在网站项目他们不是创造。

项目文件 - 一个网站项目没有一个“cproj”提交Web应用程序项目一样。

Converting to a Web Application project可能会更困难,那么你认为特别是如果你严重依赖appcode文件夹。

我个人比较喜欢Web应用程序项目我觉得它们更容易使用,而且更少恼人的部署。我个人只会使用非常小而简单的网站项目。

额外的阅读从MSDN

+0

不错,很好的总结 – 2009-02-11 22:39:16

1

除了由克里斯提供的信息,你也应该注意,对于Web应用程序项目,配置文件不提供开箱即用:

http://www.codersbarn.com/post/2008/06/01/ASPNET-Web-Site-versus-Web-Application-Project.aspx

有是可用的解决方法: http://code.msdn.microsoft.com/WebProfileBuilder

基本上,Web应用程序项目没有Profile对象au与Web站点项目一样,以主动方式添加到每个页面,所以我们无法获得对web.config文件中定义的配置文件属性的强类型编程访问。

安东尼:-)

1

我的选择是在Web应用程序使用网站项目。我主要依靠“在浏览器中查看”在开发过程中执行页面而不是f5。我可以打开浏览器窗口并修改代码,而无需关闭运行时浏览器。通常如果我需要调试,我将IDE附加到相应的进程。根据我的经验,这样做更有效率,而不必每次编译或进行更改时编译和重新启动应用程序。如果应用程序具有登录页面,则会更加放大。每次按F5时都不需要登录,因为有许多方法可以进行设置。但偏好不是。

相关问题