我在这里有一个相当大的解决方案,有很多不同的web应用程序和网站,大约有10-15个。
当我将VS2008附加到任何进程(很可能是Nunit.exe或类似的程序)时,解决方案中的每个网站/应用程序都会得到一个Cassini进程。有没有一种快速的方法可以消除VS中的这种行为,或者我必须将它们连接到IIS?
我在这里有一个相当大的解决方案,有很多不同的web应用程序和网站,大约有10-15个。
当我将VS2008附加到任何进程(很可能是Nunit.exe或类似的程序)时,解决方案中的每个网站/应用程序都会得到一个Cassini进程。有没有一种快速的方法可以消除VS中的这种行为,或者我必须将它们连接到IIS?
我认为您要做的是将每个网站项目的“调试时始终启动”属性设置为“false”。只需在解决方案资源管理器中单击项目,点击F4,它就会成为列表中的第一个属性。
这个属性很烦人,因为即使您将调试器附加到IIS(即,您甚至没有构建解决方案),小服务器也会自动启动。
正如多个应用程序不能具有相同的URL一样,您需要多个Cassini实例才能在本地公开这些应用程序(即项目)。这更接近于代码最终部署的方式。您不会将多个项目的输出粘贴到生产应用程序服务器上的单个文件夹中,因此VS也不会这样做。此外,为每个项目生成一个新流程会为它们提供自己的资源,从而防止它们在调试过程中相互干扰。
VS2008公开了一个项目级别设置,该设置阻止Cassini启动,除非明确调试了项目。如果你只想运行单元测试(因为这些测试在一个单独的项目中,对吧。
据我所知,Visual Studio附带的迷你网络服务器一次只能承载一个网络应用程序。对于你想要的东西,你真的必须使用IIS。