【问题标题】:ASP.NET MVC - debugging a deployed appASP.NET MVC - 调试已部署的应用程序
【发布时间】:2013-02-01 18:06:58
【问题描述】:

设置:

我有一个 ASP.NET MVC 4 应用程序,部署在可以使用远程桌面访问的远程服务器上。

文件已经发布到服务器,所以没有来源。

在远程服务器上,安装了 Visual Studio 2012 Express 的副本。

问题:

在服务器上调试应用程序的最佳方法是什么?

我的下意识反应是用 Visual Studio 2012 Express 打开应用程序,然后调试它。

但是将所有代码编译成 .dll 文件后,我可以调试任何东西吗?

那么...你会推荐什么策略?

问题:

由于解决方案已发布,因此没有项目文件或解决方案文件。那么如何创建解决方案文件以允许我打开此解决方案?

对不起,如果这听起来很简单,我的大脑已经死了。嗯,差不多。我还能打字……

【问题讨论】:

  • 有机会在服务器上也有调试符号吗? (.dll 之后的 .pdb 文件)。如果,您可以将该进程附加到 Visual Studio。
  • 您是否有权访问任何源代码,还是只能访问已部署在生产环境中的内容?
  • 我认为您不能使用 VS Express 调试器附加到进程。我认为您必须拥有标准版或更好的版本。

标签: asp.net-mvc visual-studio-2012 visual-studio-debugging


【解决方案1】:

使用 Visual Studio 标准版和更高版本中内置的远程调试器有几个选项。这允许您从本地计算机调试远程计算机上的代码,前提是您可以访问远程计算机以设置服务并拥有允许您访问该信息的帐户

http://msdn.microsoft.com/en-us/library/bt727f1t(v=VS.100).aspx

http://msdn.microsoft.com/en-us/library/vstudio/y7f5zaaa(v=vs.110).aspx

【讨论】:

    【解决方案2】:

    这是假设您拥有源代码和将应用程序重新部署到生产环境的选项,但我会使用像 log4netnLog 这样的日志记录框架将日志记录添加到您的项目并将调试信息转储到文件中系统、数据库,甚至是 UDP 监听器(查看 Log4View 作为选项)。设置和部署它需要一些时间和精力,但它可以在未来的调试情况下为您节省数倍的时间。

    另外,请查看ELMAH。我从未使用过它,但我听说一些非常聪明的人对此赞不绝口。

    但是,如果您仅限于调试当前部署到生产环境中的位,这将无济于事。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-25
      • 2011-06-21
      相关资源
      最近更新 更多