C#ASP.NET cs0246问题

时间:2011-11-15 19:53:29

标签: c# asp.net

我遇到了一个问题,我不断在我的网络服务器上收到错误消息CS0246,但在我的visual studio环境中却没有。问题来自我在项目中引用的dll。服务器无法为我的dll找到我的命名空间。

为了解决这个问题,我尝试将项目目录中的每个文件复制到我的Web服务器,在我的web.config文件中添加一个标记,并在我的aspx页面中添加一个import语句。我也尝试在我的aspx页面中添加一个程序集引用,但这似乎需要在注册表中进行更改,我认为我无法访问它。

我还应该注意我的dll和命名空间名称是不同的,但更改名称或者没有做任何事情。我也完全删除了dll并将代码文件直接复制到我的项目中,但它仍然找不到命名空间。

我认为我应该在其他地方注册命名空间和dll,但我无法弄清楚在哪里。任何帮助将不胜感激。

如果重要,我的web项目和dll都使用.NET2.0

2 个答案:

答案 0 :(得分:0)

我知道这相当于烦人的“你重启了吗”,但是你尝试过制作新的解决方案并重新添加项目和参考资料吗?有时.sln文件可能会损坏。

答案 1 :(得分:0)

有时,web.config文件包含.NET框架生成临时文件的说明。

请检查配置文件中的类似内容:

  <system.web.webPages.razor>
    <host
      factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
        <add namespace="YourNamespace.ShouldBeCorrect.Here" />
      </namespaces>
    </pages>
  </system.web.webPages.razor>

如果您的错误页面包含对动态生成文件的引用,例如:

,则可能出现这种情况
Source File: c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\133f2363\4ba6d0ba\App_Web_index.cshtml.a8d08dba.ociepbng.0.cs    Line: 27