在名称空间"System"中无法识别System.DirectoryServices

jan*_*oly 29 .net c# directoryservices

我正在尝试System.DirectoryServices在网站项目中使用,我收到此错误:

命名空间"系统"中不存在类型或命名空间名称"DirectoryServices"(您是否缺少程序集引用?)

我的项目参考System.DirectoryServicesweb.config:

<add assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>  
Run Code Online (Sandbox Code Playgroud)

我确实有using System.DirectoryServices我想要使​​用它的文件.

有没有人知道在哪里寻找问题?

小智 105

  1. 右键单击解决方案下的References.
  2. 选择添加引用.可以在Framework Assemblies列表下找到该引用.选择System.DirectoryServices,然后单击"添加".

  • 我在参考文献中有它,它仍然给我与上面相同的错误. (4认同)
  • @vapcguy旧注释,但您可能还需要添加引用* System.DirectoryServices.AccountManagement *。 (3认同)

Mit*_*eat 8

在黑暗中拍摄:您是否尝试过添加到web.config:

<compilation debug="true">
     <assemblies>
          <add assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
     </assemblies>
</compilation>
Run Code Online (Sandbox Code Playgroud)


Sal*_*qui 7

这是一个非常古老的线索,但只是为了后代提供一个完整的答案;)

如果项目缺少对.Net组件System.DirectoryServices的引用,则会出现此问题

以您喜欢的常用方式添加此引用将解决该问题.

  • 这是一个网站项目,正如您在问题中看到的那样,我确实在 web.config 中引用了程序集。 (2认同)

Mar*_*ell 6

Web服务器(IIS或其他)是否配置为将文件夹作为应用程序运行(即显示为cog),是否使用正确版本的ASP.NET?如果它运行为1.1,它的位可能会起作用 - 但它无法在1.1 GAC中找到2.0程序集.


小智 6

我认为您应该安装 Directory Services Package。

Install-Package System.DirectoryServices -Version 4.0.0 
Run Code Online (Sandbox Code Playgroud)

目录服务包