Asp.net 需要同时调试asp和silverlight解决方案

Asp.net 需要同时调试asp和silverlight解决方案,asp.net,visual-studio-2010,silverlight,Asp.net,Visual Studio 2010,Silverlight,我有两个解决方案,一个是asp.net,另一个是silverlight解决方案。它们都托管在我的本地服务器上。我需要的是同时调试两个解决方案,在asp解决方案中,我有一个这样的代码页面 <iframe src="http://localhost/UI_RegInc/UI_RegInc.aspx?UserId=<%=UserId%>" frameborder="0" height="620" scrolling="no" width="1000" marginheight

我有两个解决方案,一个是asp.net,另一个是silverlight解决方案。它们都托管在我的本地服务器上。我需要的是同时调试两个解决方案,在asp解决方案中,我有一个这样的代码页面

<iframe src="http://localhost/UI_RegInc/UI_RegInc.aspx?UserId=<%=UserId%>"
    frameborder="0" height="620" scrolling="no" width="1000" marginheight="0" marginwidth="0">
</iframe>

这里我调用UI\u RegInc silverlight应用程序,其中UI\u RegInc.aspx页面调用我要调试的silverlight应用程序。 我尝试的是启动asp应用程序,然后在VS的另一个实例中启动silverlight应用程序,它是UI_RegInc,在这个实例中 正在尝试使用asp应用程序将其附加到iexplorer进程。但是没有得到积极的结果。还尝试连接到webdev进程。
这是一个繁琐的解释,但希望您能理解。

将您的ASP.NET和Silverlight项目添加到公共解决方案中,Visual Studio调试器将在调试网站项目时自动附加到Silverlight应用程序。您不能将Visual Studio的两个独立实例附加到同一个Internet Explorer实例,因此必须将这两个实例添加到同一解决方案中,并从中进行调试

您可以将Silverlight项目添加到现有ASP.NET解决方案中(右键单击解决方案,添加->现有项目),也可以创建一个新的解决方案,用于同时调试这两个项目(创建一个新的空白解决方案并添加现有项目,与之前相同)

下面是在此之后逐步配置所有内容的过程。您可以在此处将此源文件下载到测试解决方案:

项目如下:

  • 交叉项目测试-Silverlight 4项目
  • Web-在Index.html内托管Silverlight应用程序的ASP.NET项目
  • IFrameWebApp-在另一个ASP.NET项目中具有指向Index.html的
    的ASP.NET项目
1) 在承载Silverlight应用程序的ASP.NET项目中,更改设置,使其在调试时不会打开页面,并指定端口,以便您始终可以在已知地址(在本例中为
http://localhost:18000
)。您不希望它打开页面,因为IFrame ASP.NET项目具有要显示的实际页面。我们仍然希望它将调试器挂接到web服务器进程中,这就是第3步的作用

2) 将iframe项目中
iframe
src
属性指向另一个ASP.NET项目中承载silverlight应用程序的页面的已知地址,如下所示:

<iframe width="100%" height="100%" src="http://localhost:18000/Index.html"></iframe>

3) 右键单击解决方案文件,然后选择属性。在“启动项目”下,您需要选择“多个启动项目”,并将两个ASP.NET项目的启动操作设置为“启动”

4) 确保在这两个ASP.NET项目中都启用了Silverlight调试,特别是针对此特定场景的IFrame项目:

5) 在Silverlight应用程序中设置一个断点,按F5,所有操作都将启动。因为您将两个ASP.NET项目都设置为启动,所以它将启动两个开发web服务器,但只启动一个指向IFrame项目的internet浏览器。我在Silverlight项目的应用程序启动中添加了一个断点,只是为了演示它是否成功:

6) 按F5继续执行,Silverlight将显示在IFrame中,如下所示:


7) 很高兴将断点放在这三个项目中的任何一个,VisualStudio将调试它们

您必须在承载Silverlighth应用程序的Web项目上检查Silverlight


这无助于他调试另一个解决方案中的Silverlight项目。我尝试了这个方法,但正如Mike Marynowski所说,这对我没有帮助。谢谢回复。我将我的asp项目添加到sl项目的解决方案中,现在我有3个项目,即-1)sl应用程序,2)承载sl应用程序的asp应用程序,3)承载sl应用程序的iframe调用应用程序的asp应用程序。所以我将app#3设置为启动项目,但我不知道如何启动承载sl应用程序的应用程序。你能建议如何将它们绑定在一起吗?哦,它按原样工作,无法全部启动它们,因为iframe中的url错误。但是sl应用程序仍然没有达到我测试的断点,它肯定能工作。更新了我的答案,包括截图和用于测试和截图的解决方案的下载链接。非常感谢您的详细指导。一切都解决了。