【问题标题】:Creating project from existing IIS/ASP.NET website, building stuff从现有的 IIS/ASP.NET 网站创建项目,构建东西
【发布时间】:2011-11-12 17:22:24
【问题描述】:

因此,我不得不维护来自第三方供应商的专有代码库。供应商仍然存在,但支持很弱。该网站是 ASP.NET。

我做了一些更改,但我很难让 IIS 编译这些更改。bin/ 目录包含我认为是核心类的预编译 dll。我已经更改了这些,但它不会重新编译。我曾尝试删除 dll,但应用程序拒绝构建,说 Global.asax 不能再继承该类型,所以我真的不知道如何通过更改重建。

星期六我花了一整天来设置构建环境并尝试让测试工作正常工作。我刚刚从本地 IIS 服务器作为网站导入 VS2008。我得到它来重建应用程序而不做任何更改,但它忽略了我将在其中放置的更改。

所以我需要从这个网站和/或目录结构中找到一个解决方案,以便我可以进行实际的、大型的、完全成熟的重建并对这个代码库进行更改。有人知道我该怎么做吗?

编辑:更详细一点。我尝试创建一个空白项目,然后在整个网站目录中添加现有文件...。这没有奏效,它停止了大约 10% 的导入。

【问题讨论】:

    标签: asp.net visual-studio


    【解决方案1】:

    请记住,这里有两个(实际上是三个)级别的“构建”或编译。

    1) /bin 目录中的 DLL 应由 Visual Studio 或其他方式预先构建。 .ASPX、ASCX、ASHX、ASAX 等文件的内容包含在这些文件中。

    2) 我上面提到的 ASPX 等文件会在第一个请求进入时由 IIS 编译(通常;有一些方法可以改变这种行为)。这就是您看到的 Global.asax 错误的根源;随着 DLL 的消失,Global.asax 应该继承的类不存在。

    3) 然后是即时编译,与本文无关。

    听起来您可能缺少项目的源文件,或者网站没有正确设置为编译该 DLL 的项目

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 谢谢,问题不只是我想链接文件而不是复制它们。我想弄清楚如何围绕 ASP.NET 站点的现有源代码创建解决方案,使我能够以合理的方式进行构建。另外,至少那篇知识库文章不适用于 VS2008。
      • @cookiecaper,对不起,我以为你在寻找文件链接 :) 但这里有一个简单的方法,在 VS2008 中,从 FileMenu-> New -> Website,然后在“New Website ” 对话框选择“空网站”并将其存储在某个位置。然后在任何文本编辑器中打开新创建的“.sln”文件并将路径更改为源文件的根目录。 "Project("{E24C65DC-7377-472B-9ABA-BC803B73C61A}") = "WebSite2", "在此处指定您的路径","。希望这会对你有所帮助。
      【解决方案3】:

      不确定这个问题是否真的有效。我们正在使用的来源与应有的不同。不确定过去是否有人生气并移动了东西或什么,但获取源的新副本解决了我们的大部分问题。我现在可以使用包含的 csproj 进行构建。

      这并不能真正帮助许多其他人解决同样的问题,但是如果您遇到这样奇怪的构建行为,您可能需要从基础开始,例如确保您的源代码签出是有效的。

      【讨论】:

        【解决方案4】:

        我是 asp.net 的新手,所以我不确定这是不是专业的方式。
        我有没有 .snl 文件的项目。我只是创建一个空网站,然后将文件粘贴到我创建项目的文件夹中。
        它对我有用。
        我认为直接通过文件管理器粘贴文件和文件夹会对您有所帮助。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-12-09
          • 2012-07-27
          • 1970-01-01
          • 1970-01-01
          • 2013-02-03
          • 1970-01-01
          • 1970-01-01
          • 2020-12-22
          相关资源
          最近更新 更多