【问题标题】:Get source code of my published ASP.NET website from server从服务器获取我已发布的 ASP.NET 网站的源代码
【发布时间】:2017-01-06 11:15:52
【问题描述】:

我已通过 Visual Studio 将我的 ASP.NET 网站发布到我的 Windows Server 2012。

但是事情发生了,我失去了所有的资源。我有一个备份,但它还不够新。我可以重新编码丢失的所有内容,但我不记得全部了。

我想知道是否可以从我发布网站的服务器获取源代码?我拥有它的完全访问权限。

谢谢,

地狱猫8

【问题讨论】:

  • 这在一定程度上取决于您的部署方式;你有没有在目录中查看你有什么?它只是dll吗? dll 加视图?一切?
  • 你没有回购吗? ..您也许可以尝试使用您的 dll 中的逆向工程软件
  • 我查看了目录 (wwwroot/sitename) 并获得了所有文件,除了没有“aspx.cs”,只有“aspx”文件。我需要 .cs 文件。我使用了 Visual Studio 的发布功能。
  • 是的,你需要反编译它们,然后

标签: c# asp.net windows-server-2012


【解决方案1】:

很抱歉听到这个消息!
ASP.NET (WebForms) 应用程序由代码隐藏类和 .aspx 页面组成。所有代码隐藏类都编译到位于根目录的 bin 文件夹中的类库中。
ASP.NET (MVC) 应用程序具有类似的结构,但视图的扩展名为 .cshtml / .vbhtml。

如果您丢失了应用程序的后端代码,您可以'将需要反编译 dll 文件以获取您的代码。遗憾的是,您将丢失所有代码 cmets,因此需要重新创建它们。

部分反编译器:dotPeekILSpyJustDecompileReflector

【讨论】:

  • 这是一个 WebForms 应用程序。我可以在服务器上看到所有的 aspx 文件,但看不到 aspx.cs。谢谢,我也试试看。
  • 代码隐藏 (.aspx.cs) 文件是编译到 bin 文件夹中的 dll 中的文件。在该文件上运行一个反编译器,您将能够查看 C# 代码。
  • 我使用 dotPeek 反编译了我的 .dll 文件。太完美了,非常感谢。
【解决方案2】:

我认为,如果您没有存储库或类似的东西,但只有 DLL,您可以尝试使用反向工程工具...例如:

http://www.red-gate.com/products/dotnet-development/reflector/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-24
    • 2018-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多