2008-11-05 363 views
20

我想在一個網站項目中使用System.DirectoryServices,我得到這個錯誤:的System.DirectoryServices沒有命名空間中的「系統」認可

The type or namespace name 'DirectoryServices' does not exist in the namespace 'System' (are you missing an assembly reference?)

我的項目有中System.DirectoryServices參考web.config

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

而且我也有,我想使用它的文件using System.DirectoryServices

有沒有人有線索在哪裏尋找問題?

回答

6

配置爲文件夾作爲應用程序運行(即Web服務器(IIS或其他)顯示爲一個齒輪),它使用的是正確版本的ASP.NET嗎?如果它運行的是1.1,那麼它可能會工作 - 但它在1.1 GAC中找不到2.0彙編。

1

這是一個網絡網站項目,或網頁應用程序項目。對於後者,通過.csproj處理引用 - 即通過解決方案資源管理器中的「引用」節點處理。

+1

它是一個網站,所以這不是問題 感謝反正 – jansokoly 2008-11-05 13:21:39

8

瞎猜:你嘗試過加入到web.config:

<compilation debug="true"> 
    <assemblies> 
      <add assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> 
    </assemblies> 
</compilation> 
+0

什麼有關的System.DirectoryServices依賴於任何組件? – 2008-11-05 13:42:35

+1

PublicKeyToken可能需要小寫,我認爲它可能區分大小寫 - 我沒有這一行,並且我剛剛添加它,並從C的DLL屬性中複製/粘貼PublicKeyToken :\ Windows \ Assembly(又名GAC),這就是解決它,對我來說。 – vapcguy 2014-11-06 23:24:33

+0

即使在我構建解決方案時添加了必要的引用,但它已成功構建,並且在運行該項目時,我得到了如下錯誤:_CS0234:命名空間'System'中不存在類型或名稱空間名稱'DirectoryServices'缺少程序集引用?)_我沒有得到爲什麼我在成功構建後再次得到錯誤 – BNN 2017-03-16 07:03:38

6

這是一個非常古老的線程,但只是提供爲子孫後代着想完整的答案;)

如果項目缺少.NET組件的System.DirectoryServices參考出現此問題

以您最喜歡的通常方式添加此參考將解決該問題。

+1

這是一個網站項目,我確實在web.config中引用了程序集,就像您在問題中看到的那樣。 – jansokoly 2012-02-09 17:34:43

81
  1. 右鍵單擊解決方案下的參考。
  2. 選擇添加引用。 該引用可以在框架程序集列表下找到。 選擇System.DirectoryServices然後單擊添加。
1

在解決方案資源管理器中右鍵單擊您的項目,然後從出現的菜單中,單擊添加引用,然後在.NET選項卡瀏覽到DirectoryServices.AccountManagement

0

我有同樣的問題,當我試圖將網站轉換爲網絡應用程序。 它看起來像vs未能加載程序集應與版本相關。 切換到web.config並添加到下面的程序集。確保DLL版本與您的應用程序目標.net版本匹配。

<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> 

爲得到你需要啓動開發人員命令提示符爲VS的公鑰 .. 變化GAC目錄相關的框架上面的前C:\ WINDOWS \ Microsoft.NET \框架\ V4。 0.30319 並且調用==>sn -T System.DirectoryServices。dll

相關問題