如何更有效地构建MVC C#应用程序?

时间:2011-08-31 06:13:37

标签: c# iis

我是一个相对较新的C#开发人员,我发现自己大约有1/5作为VS 2010中的高效构建C#MVC应用程序而不是之前在Zend中使用php 手动使用vim

我在写测试/编写代码/运行测试/集成&的迭代循环中工作。调试问题。

最后一步是使用visual studio,debug>构建代码。附加到流程> w3wp.exe然后访问http://localhost/App/(IIS 7.5的本地副本)并触发一些使VS调试器运行的事件/等。

找到错误/问题后,我会停止调试器,修复它,重新编译并重复。

这令人难以置信地缓慢。

编译应用程序可能需要2秒钟,但第一次在调试器中加载大约需要60-80秒。关闭调试器会提高这一速度,但不会显着。

我的IIS副本没什么特别之处;它只是配置为从visual studio项目本地运行项目目录。

我的机器并不出色,它的3.0Ghz决斗核心运行Windows 7和4 GB的内存...但这只是一个笑话。我花了更多的时间盯着我的屏幕等待IIS 做某事而不是编写代码。

后续页面加载显然非常快,您知道即时页面加载。

问题,我想,IIS需要运行应用程序启动并加载文件,并在重新编译时对应用程序池工作人员执行任何操作,这意味着初始启动速度很慢(IOC,Web配置文件等)

...然而,我似乎无法在网上发现许多其他人抱怨这一点,所以我想它必须是如何配置应用程序,如何配置IIS以及我的工作流程的某种组合。搞砸了。

我做错了什么?

如果IIS启动无法解决,我应该如何进行开发以避免此问题?

2 个答案:

答案 0 :(得分:3)

我认为大多数人都使用Built In Visual Studio开发服务器(类似IIS)。如果您运行的是SP1,则还可以使用IIS Express,它对于大型和/或多/跨网站应用程序更加强大。

右键单击您的Web应用程序 - >属性 - > Web选项卡以选择调试服务器。

答案 1 :(得分:1)

我同意你的观点,它可能需要对你的本地系统做些什么。显然,我不可能告诉你系统是如何配置错误的,但我会先详细检查一下。

其他一些可能有用的提示,即使它们无法解决问题的根源:

  • 使用Erik建议的内置开发服务器。
  • 如果您只更改了模板,则无需从头开始重新启动。
  • 如果您有良好的单元测试,则根本不需要启动Web应用程序。
  • IIS 7.5是否有应用程序池?如果是,您可以重新启动应用程序池,这比重新启动整个IIS要快得多。

PS。:如果网络配置错误,我在打开数据库连接时看到了一些奇怪的行为。即使它在本地计算机上,您也可能有奇怪的DNS查找或类似的东西。正如关于寻找什么的额外提示。