2

我已将 C# ASP 网站移至 C# ASP Web 应用程序。我这样做是为了可以做一些事情,比如添加 Pre-Build 事件。

除了无法识别我在 App_Code 文件夹中的 .cs 文件中声明的某些命名空间外,一切似乎都几乎正常工作。

我收到构建错误,例如

The type or namespace name 'nsAppGlobal' could not be found (are you missing a using directive or an assembly reference?)

我有一个 .cs 文件,它非常清楚地声明了这个命名空间。由于某种原因,Intellisense 和编译器都看不到它。

我听说我可以通过将我的命名空间构建到一个 dll 库中然后将其包含在 Web 应用程序中来解决这个问题。这听起来很傻 - 因为我将如何编辑该代码?我必须在另一个项目中编辑并重建 dll?

有没有人遇到过这个问题?在 Web 应用程序项目中使用命名空间的最佳策略是什么?

4

2 回答 2

3

在将网站迁移到 Web 应用程序时,我也注意到了这种行为:似乎 App_Code 目录因其“神奇”的名称而被忽略。

解决方案很简单:只需重命名 App_Code 目录。

于 2012-11-20T17:30:03.463 回答
2

有时在将网站转换为 Web 应用程序时,Global.asax 命名空间会损坏。Global.asax.cs 将具有正确的命名空间,但 Global.asax 不会。

<%@ Application Codebehind="Global.asax.cs" Inherits="WILD.MvcApplication" Language="C#" %>

默认情况下,当您打开 Global.asax 时,它会打开关联的 C# 文件。您想查看标记。确保属性“ Inherits ”与 Global.asax.cs 命名空间相匹配。

于 2012-11-20T17:17:57.573 回答