【问题标题】:App_Code folder is missing in VS 2010VS 2010 中缺少 App_Code 文件夹
【发布时间】:2011-01-17 16:14:52
【问题描述】:

我试图使用 VS 2010 RC 创建一个动态数据网站。尝试创建一个 App_Code 文件夹,我将在其中放置一个 LINQ to SQL 类,但失败了。当我选择“添加 ASP.NET 文件夹”来添加文件夹时,我可以选择仅创建以下文件夹:

  • App_GlobalResources
  • App_LocalResources
  • App_Data
  • App_Browsers
  • 主题

App_Code 文件夹发生了什么?

【问题讨论】:

    标签: asp.net visual-studio-2010 visual-studio dynamic-data


    【解决方案1】:

    为什么不创建另一个项目,一个类库,然后把它放在那里。到目前为止,这是将这些课程与您网站的其他部分分开的最佳方式。

    要回答您关于 App_Code 文件夹的具体问题,它在网站项目中作为 Asp.Net 文件夹提供,您可以从中进行选择。但是从一个 Web 应用程序项目中,您只需创建一个新文件夹并将其命名为 App_Code,它就可以正常工作。这是 Visual Studio 2010 RC 的版本。

    【讨论】:

    • 这是一个演示应用程序。我希望它尽可能简单。
    • 我仍然会为您的 dal 类添加另一个项目。它确实不会增加任何复杂性,如果您需要使其更具生产水平,您可以再次使用它。
    • 我同意这个建议,但这确实不能回答问题。
    • @Sam:克里斯在回答的第二段中回答了这个问题。在“Web 应用程序”项目(如“动态数据”)中,您必须手动创建“App_Code”作为普通文件夹,仅此而已。这不是 VS2010 特有的,VS2008 也是如此。
    • @Slauma,当我发表评论时,第二段没有出现。
    【解决方案2】:

    您不能/不应该将 App_Code 文件夹添加到 Web 应用程序,因为该文件夹是为 asp.net 运行时编译而设计的,而 Web 应用程序项目旨在让您将您的网站预编译成一个 dll,您可以在 Bin 文件夹中找到并部署到您的站点。如果你手动添加这个,你最终可能会遇到名称冲突,因为该类将被预编译为 dll,然后 asp.net 将再次尝试在运行时重新编译。

    因此,对于 Web 应用项目,您应该改为添加一个名为“CodeFolder”之类的文件夹,然后在其中添加您的类。然后右键单击该类文件上的属性并将其构建配置设置为编译而不是内容。

    我正在为 www.athenatennis.com.sg 开发自己的网络项目,并且正在经历类似的学习曲线。

    【讨论】:

    • “您不能/不应该将 App_Code 文件夹添加到 Web 应用程序,因为此文件夹是为运行时编译而设计的”我认为应编辑接受的答案以包含此内容。它解释了为什么最初的问题是一种不好的方法,而不仅仅是建议最佳实践。 @Chris Conway 暗示创建 App_Code 文件夹没有问题,但我个人在几个方面都被这个烧毁了。
    【解决方案3】:

    您可以手动创建 App_Code 文件夹并在其中添加您的类。 您需要注意的一件事是...在文件属性中,确保将 Build Action 设置为 Compile

    【讨论】:

    • 这非常重要!默认情况下,在 .NET 4.0+ Web 应用程序(不确定较低版本)中,似乎不会为 App_Code 文件夹之外的类文件设置此选项。这导致我所有的 IHttpModules 在测试时无法编译并启动,直到它们被设置为编译。
    【解决方案4】:

    我还觉得这很有趣,因为它不见了。问题是您“不需要”创建 App_Code 文件夹,您只需将类添加到任何新文件夹即可。

    在 VS 2005 中,App_Code 之外的任何类都会产生编译错误。

    所以我也想知道他们为什么决定取消这个限制?是因为人家吐槽,还是设计理念变了,觉得有必要?

    【讨论】:

      【解决方案5】:

      如果你想要app_code 文件夹,你必须创建“ASP.NET 网站”。完成后,右键单击网站(解决方案资源管理器)-> 添加 ASP.NET 文件夹->App_Code。

      如果您正在查看“ASP.NET Web 应用程序”中的app_code 文件夹,那您就是在浪费时间。

      【讨论】:

        【解决方案6】:

        在VS 2010中,你需要创建一个解决方案,然后右键->添加新网站,然后当你添加类,linq2sql等时,vs会为你创建app_code文件夹

        【讨论】:

          【解决方案7】:

          如果您创建了一个类,它会询问您是否要将其添加到 App 代码文件夹中。

          【讨论】:

            【解决方案8】:

            这很简单,只需从“添加新项目”中添加新类即可。 Visual Studio 2010 将自动显示“您是否要将文件放入 App_Code 文件夹”的消息。只需点击确定。

            【讨论】:

              猜你喜欢
              • 2013-04-08
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2014-09-08
              • 2011-04-12
              • 2013-05-17
              相关资源
              最近更新 更多