web-dev-qa-db-de.com

System.DirectoryServices wird im Namespace 'System' nicht erkannt

Ich versuche, System.DirectoryServices in einem Website-Projekt zu verwenden und erhalte folgende Fehlermeldung:

Der Typ- oder Namespace-Name 'DirectoryServices' ist im Namespace 'System' nicht vorhanden (fehlt eine Assemblyreferenz?)

Mein Projekt hat einen Verweis auf System.DirectoryServices in web.config

<add Assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>  

Und ich habe using System.DirectoryServices in den Dateien, in denen ich es verwenden möchte.

Hat jemand eine Ahnung, wo er nach dem Problem suchen muss?

25
jansokoly

Ist der Webserver (IIS oder was auch immer) so konfiguriert, dass der Ordner als Anwendung ausgeführt wird (d. H. Als Zahn), und verwendet er die richtige Version von ASP.NET? Wenn es als 1.1 ausgeführt wird, funktionieren möglicherweise einige Bits - aber es wird die 2.0-Assembly im 1.1-GAC nicht finden.

6
Marc Gravell
  1. Klicken Sie unter Ihrer Lösung mit der rechten Maustaste auf Referenzen. 
  2. Wählen Sie Referenz hinzufügen .. Die Referenz befindet sich unter der Liste der Framework-Assemblies. Wählen Sie System.DirectoryServices aus und klicken Sie auf Hinzufügen.
95
user1947015

Im Dunkeln geschossen: Haben Sie versucht, zur web.config hinzuzufügen:

<compilation debug="true">
     <assemblies>
          <add Assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
     </assemblies>
</compilation>
8
Mitch Wheat

Dies ist ein sehr alter Thread, aber nur um eine vollständige Antwort für die Nachwelt zu geben;)

Dieses Problem tritt auf, wenn dem Projekt ein Verweis auf die .Net-Komponente System.DirectoryServices fehlt.

Wenn Sie diese Referenz in der von Ihnen bevorzugten Weise hinzufügen, wird das Problem behoben.

7
Salman Siddiqui

Ich denke, Sie sollten Directory Services Package installieren.

Install-Package System.DirectoryServices -Version 4.0.0 

Verzeichnisdienste-Paket

2
BasmaSH

Ist dies ein Web Site Projekt oder ein Web Application Projekt. Bei letzteren werden Verweise über die .csproj - d.

1
Marc Gravell

Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Ihr Projekt, klicken Sie dann im daraufhin angezeigten Menü auf Referenz hinzufügen, und navigieren Sie auf der Registerkarte .NET zu DirectoryServices.AccountManagement

1
user2148239

Ich hatte das gleiche Problem, als ich versuchte, die Website in eine Web-App zu konvertieren. Es sieht so aus, als wäre das Versagen beim Laden der Assembly mit der Versionsverwaltung verbunden. Wechseln Sie zu web.config und fügen Sie die Assembly wie folgt hinzu. Stellen Sie sicher, dass die DLL -Version Ihrer .NET-Version der Anwendung entspricht.

<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.0">
      <assemblies>
        <add Assembly="System.DirectoryServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
      </assemblies>
    </compilation>
  </system.web>
</configuration>

um einen öffentlichen Schlüssel zu erhalten, müssen Sie Developer Command Prompt for VS starten. Wechseln Sie in das GAC-Verzeichnis-bezogene Framework oben (ex C:\Windows\Microsoft.NET\Framework\v4.0.30319) Und rufen Sie es an 

sn -T System.DirectoryServices.dll
0

Diese Probleme treten auf, wenn Sie mit einer älteren .NET-Version arbeiten und versuchen, mit der neuesten IDE zu erstellen

Es hängt davon ab, welche Version von IDE Sie verwenden und auch die aktuelle Codeversion.

Überprüfen Sie die Web-Konfiguration,

In meinem Fall habe ich die neueste Version verwendet, d. H. 4.7 und directoryService Assembly verweisen immer noch auf C # 4.0.

Fügen Sie unten hinzu, wenn Sie die neueste Version von id verwenden, d. H. 4.7

  <system.web>
  <location>

<compilation debug="false" numRecompilesBeforeAppRestart="100" targetFramework="4.7">
        <assemblies>
<add Assembly="System.DirectoryServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add Assembly="System.DirectoryServices.AccountManagement, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
 </assemblies>
      </compilation>
</system.web>
  </location>
0
Pratheek S