C# Razor—导入可以';找不到

C# Razor—导入可以';找不到,c#,razor,namespaces,C#,Razor,Namespaces,我目前正在使用一个包含C#项目和Razor网页项目的解决方案。我希望将一个名称空间从该C#项目导入到web页面,但它给出了一个错误,表示找不到该名称空间。项目中的名称空间是结构化的“CompanyName.WordThatDescriptionNamespace”。当我说使用Company.Namespace时,它说没有称为Company的名称空间。使用该句点是否会阻止它导入名称空间,或者是否有解决方法?从您的问题中,我理解了以下内容 一个解决方案中有两个项目 一个是类项目(dll),另一个是M

我目前正在使用一个包含C#项目和Razor网页项目的解决方案。我希望将一个名称空间从该C#项目导入到web页面,但它给出了一个错误,表示找不到该名称空间。项目中的名称空间是结构化的“CompanyName.WordThatDescriptionNamespace”。当我说使用Company.Namespace时,它说没有称为Company的名称空间。使用该句点是否会阻止它导入名称空间,或者是否有解决方法?

从您的问题中,我理解了以下内容

  • 一个解决方案中有两个项目
  • 一个是类项目(dll),另一个是MVC项目
  • 您需要访问MVC的类项目中的方法

    请确保你做了以下事情 1.添加了对类项目dll的引用,该类项目具有
    CompanyName.wordthattescribesnamespace
    。您可以访问解决方案资源管理器并验证这一点。 2.如果引用,请检查属性,是否设置了
    CopyLocal=True
    。删除Bin文件夹中的DLL,尝试引用并将其更改为
    False
    ,然后生成项目。 3.您还可以将名称空间添加到位于Views文件夹中的Web.config,这样它将可用于所有视图

    <pages>
      <namespaces>
        <add namespace="System.Web.Helpers" />
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
        <add namespace="System.Web.WebPages" />
    
        ...
    
        <add namespace="Infragistics.Web.Mvc" />
      </namespaces>
    </pages>
    
    
    ...
    

    希望以上任何一项都能对您有所帮助。

    那么实际的名称空间是什么——“公司”还是“公司名称”?您是否检查了对该项目的引用?这种类型的错误通常意味着您应该引用csproj文件中的外部库。@Andrei名称空间的名称是“Company.Something”@legrandviking很感谢您让我觉得自己很愚蠢,但我确实忘记了添加引用。谢谢大家!@GPinsky这件事偶尔会发生在我们中最好的人身上,我提到这件事的主要原因是我最近也有同样的问题