2010-07-27 49 views
3

这使我们疯狂......在VS2010中,MVC2项目,并非所有项目......都在升级的项目上从2008/MVC1和2010/MVC2内创建一个全新的项目,我们有以下行为:在VS2010中添加/删除文件导致“WebDev.WebServer20.exe已停止工作”错误

1)发展为正常..

2)按F5键或Ctrl-F5打开一个浏览器

3)太棒了!

4)添加一个CSS文件(或JS文件或任何文件,或在项目

5删除任何文件))立即弹出对话框“WebDev.WebServer20.exe已停止工作”

你必须关闭该程序,并再次“F5” - 并与世界一切正常......

说我们然后修改现有的css文件。没问题。但添加或删除一个,立即崩溃。

似乎开发Web服务器被“锁定”到项目文件中,当它检测到更改时,它就会死亡。

事件查看器是相当无益的。记录以下:

错误的应用程序WebDev.WebServer20.exe,版本10.0.30319.1,时间戳0x4ba204ca,错误模块Kernel,版本6.0.6001.18215,时间戳0x49953395,异常代码0xe053534f,故障偏移0x000442eb,过程ID 0x%9,应用程序启动时间0x%10。

这发生在我们所有的开发人员工作站上,其中包括一些Windows Sever 2008,一些使用Windows XP,一些使用Windows 7.所有正在运行带有ReSharper的VS2010 Premium。

此外,同样的事情发生在以4.0框架为目标的项目上,而只是将错误消息引用到WebDev.WebServer40.exe。

Google没有透露任何信息。我们已经尝试过“设置静态端口”而不是动态端口 - 没有任何帮助。

如果可以,请帮助。

+0

更新:即使右键单击开发服务器的系统托盘中的图标,并选择“停止”导致此问题。它不会简单地杀死实例,而是弹出与服务器停止工作相同的对话框。 所以,也许这与项目无关,而是服务器本身,只是不知道如何优雅地死去? – 2010-07-27 22:17:58

+0

更新:似乎是一个MVCTurbine/StructureMap相关的问题。虽然这些技术很好,但显然你可以让它们以某种方式憎恨对方,造成这种情况。与Turbine作者合作解决问题。一旦解决了,我会在这里发布答案。详情请参阅此主题: http://mvcturbine.codeplex.com/Thread/View.aspx?ThreadId=219449 – 2010-07-31 14:08:20

回答

2

所以,事实证明,这个问题是由于MVCTurbine和StructureMap的某种使用所致,但这种问题似乎也可能与其他IOC Containers发生,而不仅仅是StructureMap。

MVCTurbine的作者表示该修复将在该产品的2.2版中。

在此期间,在Global.asax中的代码,一个额外的生产线将解决这个问题:

//VNEXT: after Turbine 2.2 we wont need this line anymore... 
protected override void ShutdownContext() { CurrentContext = null; ServiceLocator = null; } 

This article表明我们解决特定用例。 MVCTurbine和StructureMap的“正常普通香草”使用不会有这个问题。

很明显,非常感谢Javier对帮助请求的响应!

相关问题