如何解决“无法找到类型或命名空间”编译错误?

时间:2009-02-14 23:16:08

标签: c# asp.net web

我担心我付费的网络托管配置不正确。在我的本地计算机上正确编译和运行的ASP.NET网站在部署后无法运行。

我正在处理的问题是编译错误:CS0246,“找不到类型或命名空间(您是否缺少'using'指令或程序集引用?)

我的网站包含以下文件和文件夹:

websitedemo/Default.aspx
websitedemo/Default.aspx.cs
websitedemo/App_Code/HelloClass.cs

如果我尝试使用App Code文件夹中包含的任何代码,则会发生编译错误。 我已将整个/ websitedemo /文件夹包含在此存档中,如果它有助于解决错误:http://kivin.ca/websitedemo/source.zip

我已将文件夹保留在调试模式下。可以在http://kivin.ca/websitedemo/

查看编译错误屏幕

最好的问候。

- 更新:

如果它有助于解决此错误,我遇到了当我尝试部署ASP.NET WebApplication而不是网站时出现的行为。

如果我的aspx文件包含这样的@Page直接:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="myproj._Default" Debug="true" %>

我得到的编译错误是:'解析器错误消息:无法加载类型'myproj._Default'。'

使用Build - &gt;通过ftp部署webapps。发布 - &gt; [X]替换匹配的文件,[X]仅运行此应用程序所需的文件。 [X]包括App_Data文件夹。

4 个答案:

答案 0 :(得分:1)

我要感谢大家的支持。非常感谢。我一直与我的网络托管公司的专家联系,他们告诉我这不是代码或服务器配置错误,而只是我的控制面板中错过了一步。 将我的网站工作目录设置为虚拟目录解决了这个问题。

感谢堆栈溢出社区和Softsys Hosting的优秀支持人员。

答案 1 :(得分:0)

如果您在本地构建站点并将生成的dll(包含HelloClass)上传到bin目录,我敢打赌它会起作用。

答案 2 :(得分:0)

尝试将HelloClass.cs放在命名空间中,并将“使用”放在默认文件的顶部

答案 3 :(得分:0)

http://msdn.microsoft.com/en-us/library/54dwfbb7.aspx

我认为这可能对您有帮助......如果您有子文件夹

另外,app_code是在框架2.0中引入的,您可以检查活动框上的Web应用程序是否设置为使用框架2.0?否则这些类不会在那里编译