2012-05-21 199 views
10

CS0234:从直接服务类型或命名空间名称“的DirectoryServices”不存在命名空间中的“系统” (?是否缺少程序集引用)命名空间中不存在类型或名称空间名称“DirectoryServices”?

这页的做工精细,显示记录没有错误。但现在它给出了上述错误。

<asp:GridView ID="gvUsers" runat="server" AutoGenerateColumns="false" DataSourceID="odsUsers" 
            AllowPaging="true" AllowSorting="true" Width="100%"> 
<Columns> 
<asp:TemplateField HeaderText="User Name"> 
<ItemTemplate> 

<%#((System.DirectoryServices.DirectoryEntry)Container.DataItem).Properties["userPrincipalName"].Value%> 

    </ItemTemplate> 
    </asp:TemplateField> 
/Columns> 
</asp:GridView> 

项目成功生成,但是当我打开网页,然后提示错误

+0

当你打开网页,这是你正在构建的项目在同一台机器上? – mservidio

+4

您是否已经添加了对您的项目的'System.DirectoryServices'程序集的引用? –

+1

@marc_s:是System.DirectoryServices程序集已经添加。我也删除这个并再次添加,但同样的error.and另外一个这个错误还有其他机器(不是在谈论开发服务器)。这个网页工作很好,从最近几天。我在解决方案中添加了一些库项目,其中一个是窗口服务 – Ali

回答

0

看起来你需要添加一个引用(在你的项目)System.DirectoryServices。由于您使用的是aspx标记页面,因此有时编译器会让这些编译器在“构建”期间飞行,但在您实际执行页面时会失败。

+0

System.DirectoryServices程序集已添加,我将其删除并再次添加,但错误相同 – Ali

1

你需要在你的asp.net页面上添加一个import指令。确保它完全合格。确保你的项目中也有对装配的参考。

<%@ Assembly Name="System.DirectoryServices, Version=2.0.0.0, 
    Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" %> 
37

后您添加目录服务的参考,右键单击reference,去properties。将"CopyLocal"设置为true。

+0

如果发生在“解决方案资源管理器”面板的顶部找不到“文件夹引用”搜索以显示“显示所有文件”选项。 –

0

我有同样的问题。我在我的Windows文件夹中搜索了DirectoryServices.dll。由于所有出现的版本都具有相同的大小,我选择了一个并将其复制到我网站的bin文件夹中。如果您没有bin文件夹,只需创建它。 一旦我这样做,我就能够毫无错误地打开我的网页。

7

我非常确定我将我的应用程序从我的开发框“完全错误地”发布到我的IIS框中。然而,我发现这个解决方案here,它为我工作。

如果您使用的是web应用程序,那么在您的web.config中添加以下代码。

<compilation debug="true" targetFramework="4.0" > 
    <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> 
1

我在Visual Studio 2015中遇到了一个针对.NET Framework 4.5.2的MVC项目的问题。将目标框架更改为.NET 4.5可以解决问题。

1

对我而言,简单的方法是右键单击References => Add Reference,然后选择System.DirectoryServices(和需要的部件)。

0

如果在引用中添加了“System.DirectoryServices.AccountManagement”程序集,它将起作用。添加System.DirectoryServices不起作用。

5

1 - 点击 “Refrences” 鼠标左键
2 - 点击 “添加Refrence ......”
3 - 点击 “浏览” 按钮
4 - 查找遵循夹中的文件:

“C:\ Program Files文件\参考 大会\微软\ Framework.NETFramework \ v4.6.1”

-System.DirectoryServices.dll
-System.DirectoryServices.AccountManagement。DLL

5 - 选择他们
6 - 按“确定”按钮

相关问题