VS2008的解决方案,运行时为什么会每个网站/项目都有一个对应的VSTS(Visual Studio Development Server)生成

tinkoko 2008-07-06 09:07:51
请大家帮我看看下面的问题,谢谢:

我有一个解决方案,是用VS2005写的,其中有一个Web网站,4个Web Project. 这些Web Project其实是MVC中的Business layer, Data Access Layer和Business Object等,产生

的dll文件是供Web网站使用的.
在VS2005下运行是,任务栏中会出现一个VSTS(Visual Studio Development Server)来作为"Default Web Server",运行Web网站.

今天我把整个解决方案转换到VS2008,但是运行的时候在任务栏中自动出现了五个VSTS,一个用来运行Web网站,另外四个对应那四个Web Project.
我对比了VS2005和VS2008的sln文件,发现他们的结构是类似的(当然关于VS2005或VS2008的信息不一样).我也试图让Web网站不依赖于那些Web Project(既然Web网站下的\bin

目录下已经有了这些Project的dll文件),但运行时还是有五个VSTS.

虽然五个VSTS不影响运行,但是4个对应Web Project的VSTS是不需要的,多占了四个端口,而且任务栏中五个一样的VSTS图标,看着也不舒服.
请问有没有什么办法可以让VS2008只为Web网站建一个VSTS,不要给Web Project也建VSTS呢?

非常感谢!!!
如果我说的不清楚也清告诉我,我再来补充.

谢谢.
...全文
709 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
c2008200613 2010-06-15
  • 打赏
  • 举报
回复
learn
ds19841015 2008-12-29
  • 打赏
  • 举报
回复
有解决办法了
选定Web Site或者Web Application项目,打开属性面板,可以看到一个属性“总是在调试时启动”,默认是true,改为false就ok了
tinkoko 2008-07-10
  • 打赏
  • 举报
回复
谢谢晓风残月

我的解决方案中是一个Web Site Project,四个Web Application Projects(应该用Library Projects来代替)

但是在VS2005中运行解决方案,还是只有一个DevServer生成,所以没注意到这个问题
转到VS2008后一运行就自动出现五个DevServer了

通过这么一问找到了很多问题,也学了很多
谢谢大家,结贴吧
Jinglecat 2008-07-10
  • 打赏
  • 举报
回复
VS2005 VS2008 都存在这个问题,并不是你项目迁移所导致
Jinglecat 2008-07-10
  • 打赏
  • 举报
回复
当然是当从VS启动WebSite才会出现(无论是F5还是Ctrl+F5),

当你直接选择某个 .aspx 文件,右击浏览是不会

但是很多时候我们需要 debug 这就成为问题了
Jinglecat 2008-07-10
  • 打赏
  • 举报
回复
1.
是下面这个问题吗?

关于 VS05 Debug 的时候自动启动解决方案中的多个WebSite?
http://topic.csdn.net/u/20070723/22/ff72c3e8-0eea-49b8-bd85-4b02f870dfec.html

如果是,那么至少现在这是无解的问题,我也很无奈.....


2.
我简单复述下问题:

假如一个解决方案中包含了多个 Web Site Project(不是WebApplicationProject)
并且都使用 VS 自带的 WebServer,
设置其中一个为启动项目,然后 Debug,

VS 会自动为每一个 WebSite 单独启动一个 WebServer,

如果禁用这个功能?

我只想让它启动一个,

因为我的机器太老啦,跑不动啊,能省点内存就省点吧^_^


tinkoko 2008-07-09
  • 打赏
  • 举报
回复
还有别的XD有这方面的经验吗?能否说说.谢谢.
vrhero 2008-07-09
  • 打赏
  • 举报
回复
这些Web Project其实是MVC中的Business layer, Data Access Layer和Business Object等
-------------
1.MVC≠3-tier...
2.除了web service...你见过谁家的BLL,DAL用WebSite的?BO也Web?你太有创意了...类库听过没?
tinkoko 2008-07-09
  • 打赏
  • 举报
回复
谢谢大家的关注和帮助.
我又试了一下,基本确定是我犯了一个概念性错误,估计没人会犯这种低级错误,所以大家都没往那方面想.

我在VS2008下新建了一个包含一个Web Site的解决方案,然后在解决方案中加入一个Web Project,启动后果然有两个DevServer生成.
然后我在解决方案中移除Web Project,加入一个Class Library Project,启动后就只有一个DevServer生成了.
所以我犯的错误就是把BBL,DAL这样的layer用Web Project来实现了,导致VS2008认为这个解决方案里有5个网站.

但是那个解决方案在VS2005里运行,确实只看到一个DevServer生成.
所以我在VS2005中新建了一个包含一个Web Site的解决方案,然后在解决方案中加入一个Web Project,启动后还是只有一个DevServer生成.
然后我用VS2008打开这个解决方案,转换后运行,果然启动后又是有两个DevServer!

所以我原来在VS2005上建解决方案的时候一直在犯概念性的错误,只是VS2005帮我掩盖了错误.
至于为什么VS2005上只有一个DevServer生成我就不知道了,请知道的XD说说.

谢谢.
simonezhlx 2008-07-09
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 sheng9hhd 的回复:]
学习学习,慕名而来~~
[/Quote]
redcn2004 2008-07-09
  • 打赏
  • 举报
回复
可爱的net_lover ,到处都有人问,忙死了。:-)。楼主说的运行5个服务器,还没见到过。
sheng9hhd 2008-07-09
  • 打赏
  • 举报
回复
学习学习,慕名而来~~
lfywy 2008-07-09
  • 打赏
  • 举报
回复
关注+学习!
UP下!
tinkoko 2008-07-09
  • 打赏
  • 举报
回复
其实我很怀疑在project什么地方我没设置对,犯了比较愚蠢的错误,但是自己一下子看不出来.
各位XD朝简单的地方帮我想想:一个解决方案,里面一个是Web Site,四个是Web Project,Web Site已经被设为启动项目,整个解决方案是单启动项目的解决方案.运行时是会出现5个DevServer吗?

另外我想我的问题也可以这么说:如果在一个解决方案里我建了一个Web Site,负责UI,然后希望建几个项目负责BBL,DAL,..., 这些项目应该是什么样的项目运行时才能不触发DevServer呢?

自己脑子已经乱了,想不出来,请大家指点指点我.
非常感谢!
zhnzzy 2008-07-09
  • 打赏
  • 举报
回复
是你弄的不对吧
孟子E章 2008-07-09
  • 打赏
  • 举报
回复
看看每个项目属性是否有设置,“启动选项”
s208ping 2008-07-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 winner2050 的回复:]
太深奥了。
[/Quote]
suyiming 2008-07-09
  • 打赏
  • 举报
回复
高歌 居然木环境 。。。。。。。。。。。。。。。
tinkoko 2008-07-06
  • 打赏
  • 举报
回复
to cat_hsfz:

谢谢.
那四个Project是Web Project,但是整个解决方案是"单启动项目"的解决方案,启动项目就是那个网站.
在VS2005里面也是这么设置的,运行的时候只出来了一个DevServer,但转到VS2008后就出5个DevServer了.
其实那四个Web Project不是网站,那我要把它们设成什么类型的Project才能确保它们不是网站呢?
非常感谢.
tinkoko 2008-07-06
  • 打赏
  • 举报
回复
谢谢上面几位的关注.
我知道我说的不够明白,但CSDN不能贴图,否则一看就很清楚了.

我说的VSDS(Visual Studio Development Server,不好意思上面打错了)是指我们在运行网站的时候,如果用Visual Studio Development Server而不是用IIS Web Server作为Default Web Server,那么按F5以后屏幕右下角任务栏里面应该会出现一个图标,tips是ASP.NET Development Server, http://localhost:xxxx/.

本来我在VS2005里运行我的那个解决方案也是这样,但现在在VS2008里运行的时候,任务栏里出现了5个图标(当然最后的port值是不同的),它们的Physical Path分别指向解决方案中的网站和4个Projects.

我不知道为什么会这样,在Google上找可能没选对合适的关键词,也没找到相关的内容.
我现在想知道的是我该如何设置那4个Projects的属性,在运行解决方案的时候才能让任务栏里只出现Web网站的图标(也就是网站的Default Web Server启动),另外4个Project的Default Web Server不要启动.
但我记得在VS2005中也没给那4个Projects的属性特别设置过什么,所以比较困惑.

谢谢大家.
加载更多回复(5)

61,821

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧