【问题标题】:Create Visual Studio 2019 project from existing Azure Web App从现有 Azure Web App 创建 Visual Studio 2019 项目
【发布时间】:2020-11-18 12:22:37
【问题描述】:

我有一个 v7 Umbraco 实例作为 Azure 上的 Web 应用程序,但开发副本所在的机器已停用,我现在需要在 Visual Studio 2019 中重新创建开发站点,最好以某种方式从实时站点克隆它.我创建了一个空项目,并使用云资源管理器从应用程序下载了文件,但我不清楚我是直接将它们复制到解决方案文件夹中还是复制到解决方案文件夹自己的子文件夹中,或者只是将它们复制到将无论如何都要这样做,因为仍然需要考虑数据库。恐怕自从三年前创建这个网站以来我就没有使用过 Visual Studio,而且我似乎已经忘记了我当时所做的大部分事情,所以非常感谢任何帮助。我可以通过谷歌找到的唯一建议是针对旧版本的 VS,因此没有太大帮助。

【问题讨论】:

  • 自从写这篇文章以来,我尝试将文件复制到项目文件夹中,然后尝试构建,由于缺少很多引用而失败。

标签: visual-studio azure umbraco7


【解决方案1】:

从实时站点重新创建原始项目可能是不可能的。这取决于您部署到实时站点的方式和内容。

听起来您拥有的是一个正在运行的实时站点,但无法访问原始源代码。您应该能够复制该站点并使其在其他地方运行,但您可能很难在无法访问源代码的情况下重新创建原始开发环境并修改网站的已编译元素。

Umbraco.com 网站上有一些关于开始和设置 Umbraco 的优秀文档。 Umbraco TV 也非常适合快速上手。这应该有助于解释项目结构。我建议你创建一个空白的 Umbraco 安装来熟悉 Umbraco 的工作原理(我写了一篇文章解释如何使用 MS VS2015 here 做到这一点)。

使用 MS WebDeploy 或 Visual Studio 中的 FTP 的典型部署不会为网站的已编译 (.cs) 元素部署项目文件或源代码,这些通常保存为开发文件并签入到源代码控制。现场站点可能只有 bin 文件夹中这些文件的编译版本。好消息是 Razor 模板和视图文件 (.cshtml) 应该在服务器上。

但是,如果所有内容都已上传(发生),那么您可能有机会下载文件,可能会打开项目并尝试在开发机器上本地运行项目。如果旧版本的 MS Visual Studio 出现问题,则没有理由不能与 2019 一起安装该版本。虽然,我怀疑这不是一个选项,因为您觉得需要创建一个新的空项目。如果是这种情况,您也许可以将任何项目文件添加到新的空项目并尝试以这种方式重新创建项目。

关于数据库。您将需要在 Microsoft SQL Server 上安装副本或备份(除非您使用基于文件的 MS SQL CE)。如果您使用 Plesk,您应该能够从服务器下载 .bak 文件,或者如果没有,则使用 MS Management Studio 远程连接,这取决于主机(Azure 将允许通过 MS Management Studio 访问)。 Umbraco 将需要在其 web.config 中配置的连接字符串,您下载的那个可能正在尝试连接到实时服务器,所以要小心。

远景思路:

  • 如果您真的很绝望,也许可以使用 ILASM.exe 之类的工具对一些已编译的 .dll 进行逆向工程,但这并不容易;
  • 也许您可以在新项目中引用 .dll,它会自动神奇地工作?!但我怀疑这是否可行,因为会有两个应用程序起点,并且您可能会遇到运行时异常。

【讨论】:

  • 非常感谢 Anthony 抽出宝贵时间回复。我想我将尝试在新项目中安装 Umbraco 的干净副本,然后以一种反向升级的方式从实时站点复制站点特定文件,看看是否可行。祝我好运。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-12-13
  • 2022-06-16
  • 1970-01-01
  • 2017-05-16
  • 1970-01-01
  • 1970-01-01
  • 2019-09-30
相关资源
最近更新 更多