命名空间“System”中无法识别 System.DirectoryServices;
我尝试在网站项目中使用 System.DirectoryServices ,但收到此错误:
命名空间“System”中不存在类型或命名空间名称“DirectoryServices”(是否缺少程序集引用?)
我的项目在 web.config< 中引用了
System.DirectoryServices
/code>:
<add assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
我在要使用它的文件中确实有 using System.DirectoryServices
。
有人知道在哪里寻找问题吗?
I'm trying to use System.DirectoryServices
in a web site project and I'm getting this error:
The type or namespace name 'DirectoryServices' does not exist in the namespace 'System' (are you missing an assembly reference?)
My project has a reference to System.DirectoryServices
in web.config
:
<add assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
And I do have using System.DirectoryServices
in the files where I want to use it.
Does anybody have a clue where to look for the problem?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(10)
该参考可以在框架程序集列表下找到。
选择“System.DirectoryServices”并单击“添加”。
The reference can be found under the Framework Assemblies list.
Select System.DirectoryServices and click Add.
我认为你应该安装目录服务包。
目录服务包
I think you should install Directory Services Package.
Directory Services Package
在黑暗中拍摄:您是否尝试添加到 web.config:
Shot in the dark: have you tried adding to the web.config:
Web 服务器(IIS 或其他)是否配置为将文件夹作为应用程序运行(即显示为 cog),并且它是否使用正确版本的 ASP.NET? 如果它作为 1.1 运行,它的某些部分可能会工作 - 但它将无法在 1.1 GAC 中找到 2.0 程序集。
Is the web-server (IIS or whatever) configured to run the folder as an application (i.e. shows as a cog), and is it using the correct version of ASP.NET? If it is running as 1.1, bits of it might work - but it would fail to find that 2.0 assembly in the 1.1 GAC.
这是一个非常古老的线程,但只是为了后代提供完整的答案;)
如果项目缺少对 .Net 组件 System.DirectoryServices 的引用,则会出现此问题
。您喜欢的通常方式将解决该问题。
This is a very old thread but just to provide a complete answer for the sake of posterity ;)
This issue occurs if the project is missing a reference to the .Net Component System.DirectoryServices
Adding this reference in the usual manner prefered by you will resolve the issue.
当我尝试将网站转换为网络应用程序时,我遇到了同样的问题。
看起来加载程序集失败应该与版本控制有关。
切换到 web.config 并将程序集添加到其中,如下所示。 确保 DLL 版本与您的应用程序目标 .NET 版本匹配。
要获取公钥,您需要启动
VS 的开发人员命令提示符
。 更改为上面的 GAC 目录相关框架C:\Windows\Microsoft.NET\Framework\v4.0.30319
并打电话
I had the same problem when I tried to convert website to web-app.
It looks like vs failing to load the assembly should be related to versioning.
switch to
web.config
and add the assembly to it as bellow. make sure the DLL version is matching your application targeted .NET version.for getting a public key you need to launch
Developer Command Prompt for VS
. Change to GAC directory related framework on above exC:\Windows\Microsoft.NET\Framework\v4.0.30319
and call
当您使用较旧的 .net 版本并尝试使用最新的 IDE 进行构建时,会出现这些问题。
这取决于您使用的 IDE 版本以及当前的代码版本。
检查网络配置,
就我而言,我使用的是最新版本,即 4.7,而
directoryService
程序集仍然引用 C#4.0。如果您使用的是最新版本的 id ie 4.7,请添加以下内容
These problems occur when you are working with older .net version and trying to build with the latest IDE
It depends on which version of IDE you are using and also the current code version.
Check the web config,
In my case, I was using the Latest version i.e 4.7 and
directoryService
assembly are still referring to C#4.0.Add below if you are using Latest version of id i.e 4.7
这是一个网站站点项目,还是一个应用程序网络项目。 对于后者,引用是通过 .csproj 处理的 - 即通过解决方案资源管理器中的“引用”节点。
Is this a web site project, or a web application project. With the latter, references are handled via the .csproj - i.e. via the "References" node in Solution Explorer.
在“解决方案资源管理器”上右键单击您的项目,然后从出现的菜单中单击“添加引用”,然后在 .NET 选项卡下导航到 DirectoryServices.AccountManagement
On Solution Explorer right-click your project, then from the resulting menu, click on Add Reference, then under the .NET tab navigate to DirectoryServices.AccountManagement
如果您使用 Partial View/ .cshtml,则必须在 Views 文件夹下的 web.config 文件中包含名称空间(请注意,这不是根目录中的 web.config)
IF you are using Partial View/ .cshtml will will have to include the namesapce in the web.config file Under the Views folder (note this is not the web.config on the root directory)