2

编辑 我认为现在的问题在于 Visual Studio 没有启动服务器(或其他任何服务器)以供浏览器回调。我不知道这是否是某个服务、它的依赖项或其他任何关于它的东西!

在VS 2013 中运行 MVC 项目时,我的浏览器链接无法正常工作。问题是浏览器链接 javascript 文件的 URL 被主动拒绝。

来自提琴手的示例消息:

[Fiddler] The connection to 'localhost' failed. <br />Error: ConnectionRefused (0x274d). <br />System.Net.Sockets.SocketException No connection could be made because the target machine actively refused it 127.0.0.1:27244

我已经验证了以下内容:

  • 相同的项目在其他机器上运行良好
  • 该站点本身有效(在不同的端口上)
  • vs:EnableBrowserLink 在 web.config 中不存在
  • 浏览器链接已启用
  • 调试设置为真
  • <!-- Visual Studio Browser Link -->部分在页面呈现,从而确认(甚至更多)浏览器链接已启用
  • 阅读有关如何使用浏览器链接的每篇文章 - 没有详细说明如果与脚本的连接被拒绝会发生什么
  • 所有浏览器上的完全相同的问题
  • 所有网络项目都存在同样的问题(我尝试了几个,甚至是新鲜的“香草”项目)
  • 重新启动VS,计算机,不修复
  • 以管理员身份运行 VS 无法修复
  • 在安全模式下运行无法修复
  • 禁用所有 VS 扩展不起作用
  • 在 VS 上运行“修复”也不起作用
  • 它试图到达的端口(在我的示例中,27244)没有显示在任何 IP 地址netstat -aon
    • 对我来说,这意味着它无法启动
  • 防火墙(甚至是公司的)没有阻止这些端口中的任何一个
  • Procmon 和 Procexplorer 无法解释为什么VS 没有启动 SignalR 进程。
  • 来自 NuGet 的带有 SignalR 的全新项目工作正常 - VS 内部使用它的方式肯定有所不同

我不明白它使用的端口是如何生成的,但每个项目都不一样。

我知道 Browser Link 在内部使用 SignalR,但我对此的研究和连接被拒绝导致我只启用端口 80,这显然无济于事。

还能是什么?有任何想法吗?我在哪里可以检查?

4

1 回答 1

1

不幸的是,我无法确定确切的原因……但是,我的问题已经解决了。完全卸载并重新安装 Visual Studio 似乎没有帮助。最终似乎有帮助的是将端口 44399 分配给我本地 IIS 上的一个端口。这会强制 Visual Studio 使用不同的端口 44398,并且从那时起,浏览器链接开始工作。

我只能假设 SignalR 服务器由于该端口无法访问而无法启动,尽管我不知道为什么。

于 2016-02-15T13:18:32.010 回答