C# 从.NET标准2.0项目添加对程序集的引用会导致错误

C# 从.NET标准2.0项目添加对程序集的引用会导致错误,c#,.net-standard,C#,.net Standard,我有一个.NET标准2.0类库,我想添加对System.DirectoryServices的引用。看起来一切正常,但在运行时我遇到了以下错误: 无法加载引用程序集以执行 详细说明如下: 无法加载文件或程序集“System.DirectoryServices,版本=4.0.0.0,区域性=中性,PublicKeyToken=b03f5f7f11d50a3a”。不应加载引用程序集以执行。它们只能在仅反射加载程序上下文中加载。(0x80131058) 我的项目“p1StandarClasese”,它是

我有一个.NET标准2.0类库,我想添加对
System.DirectoryServices
的引用。看起来一切正常,但在运行时我遇到了以下错误:

无法加载引用程序集以执行

详细说明如下:

无法加载文件或程序集“System.DirectoryServices,版本=4.0.0.0,区域性=中性,PublicKeyToken=b03f5f7f11d50a3a”。不应加载引用程序集以执行。它们只能在仅反射加载程序上下文中加载。(0x80131058)

我的项目“p1StandarClasese”,它是.netstandarver。2.0,自动添加对DLL的引用“C:\Program Files(x86)\reference Assembly\Microsoft\Framework.NETFramework\v4.8\System.DirectoryServices.DLL”

引用是VisualStudio编辑器自动添加的,VS检测到我编写的代码需要程序集要求我添加,所以我说是的。。。并添加了参考文献

我真的不明白,我想.NET标准2.0不能引用该版本的.NET程序集? 如果是这样,有什么建议吗?如何使用Active Directory程序集?我需要它来认证。有解决这个问题的方法吗


thaks获得帮助这是由于依赖项目的版本低于请求的版本,或者使用了错误的DLL作为参考

请参阅兼容性图表以确认:

根据你的问题,我的假设是你用的是 .Net标准v2.0类库 并在项目定义中引用System.DirectoryServices的版本4.0.0

如果这是不正确的,您能否提供解决方案中每个项目的.Net版本以及引用发生的位置?错误消息应具有其他上下文,以确定引用的方式


您始终可以删除引用并使用NuGet重做引用,以确保生成正确的包。

您如何引用该程序集?通过一个?no by nugget,VS在我的磁盘中创建一个对aDLL的引用,是否有Active directory的nugget?谢谢,我做到了,我删除了引用并搜索了一个nugget,就是这样,。。金块开始起作用了,谢谢