在VS2010中更改Web项目中的输出路径

时间:2011-01-07 23:13:32

标签: c# asp.net visual-studio-2010 web-application-project

我有几个ASP.NET Web项目,其Output文件夹设置为“C:\ Builds \ [ProjectName] bin”(而不是默认的“bin \”文件夹)。这使得“F5”调试无法正常工作,因为ASP.NET Development Server需要项目文件夹下的“bin”文件夹。

然后我改为使用本地IIS Web服务器(http:// localhost / webproject1“)并手动将vdir物理路径更新为我的自定义输出路径。但是VS2010不会加载csproj,因为它检测到url已经是映射到不同的文件夹位置。

我知道我可能不应该更改Output文件夹。但想知道是否有一种简单的方法来解决这个问题?目标是使用自定义构建输出文件夹进行“F5”调试。


由于Aristos的回答而更新:

谢谢Aristos。不幸的是,这不会解决问题。我的所有项目都已使用Project Reference,因此所有引用dll都被正确复制到输出文件夹中。 F5调试不起作用的原因是因为输出文件夹不是普通的“bin”子文件夹,而是在其他路径中说C:\BuildsOut\Foo\bin

似乎为了使用F5来调试VS2010中的Web项目,它必须使用默认的输出路径“bin”。如果你改变了,那么F5将无法工作,更糟糕的是你的项目甚至可能无法加载。

3 个答案:

答案 0 :(得分:1)

伊恩,

我对同样的问题感到沮丧。我终于放弃了,把这个脏小的修复放到位。我将以下内容添加到“Post-Build”事件中:

copy "$(TargetDir)MyWeb.dll" "$(ProjectDir)bin"
copy "$(TargetDir)MyWeb.pdb" "$(ProjectDir)bin"

这至少让我可以正确调试网站并点击我的断点。

答案 1 :(得分:0)

您将它们全部放在一个解决方案中,将您的Web项目设置为已启动项目,然后在Web项目中添加其余dll作为参考(右键单击Web,选择on menou“添加引用”,以及自动获取最新版本的dll并将它们放在bin上。

现在当你重新使用F5时,如果需要任何dll项目是自动构建它,那么运行带有新dll的子项目。

答案 2 :(得分:0)

删除bin文件夹中有关解决方案的所有项目,关闭系统并重新启动。这至少为我解决了这个问题。