我已将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应用程序项目中使用名称空间的最佳策略是什么?
答案 0 :(得分:3)
当migrating a web site to a web application时,我也注意到了这种行为:似乎App_Code目录由于其“神奇”名称而被忽略。
解决方案很简单:只需重命名App_Code目录。
答案 1 :(得分:2)
有时,在将网站转换为Web应用程序时,Global.asax命名空间会被破坏。 Global.asax.cs将具有正确的命名空间,但Global.asax不会。
<%@ Application Codebehind="Global.asax.cs" Inherits="WILD.MvcApplication" Language="C#" %>
默认情况下,当您打开Global.asax时,它会打开关联的C#文件。您想要查看标记。确保属性“继承”与Global.asax.cs命名空间匹配。