Asp.net 5(vNext)如何在System.DirectoryServices中使用活动目录

时间:2015-01-19 09:09:58

标签: asp.net-core

我正在玩VS 2015和Asp.net 5,但我有一个问题。

我无法在Asp.net 5中使用System.DirectoryServices。

使用System.DirectoryServices和DirectoryEntry test = new DirectoryEntry();行没有下划线,红色表示错误但是当我尝试构建解决方案时,我得到错误

错误CS0234类型或命名空间名称' DirectoryServices'命名空间中不存在'系统' (您是否缺少程序集引用?)ConsoleApp.ASP.NET Core 5.0 Program.cs 2

我的默认project.json就像

{
"version": "1.0.0-*",
"dependencies": {
},
"commands": {
    "run": "run"
},
"frameworks": {
    "aspnet50": {  },
    "aspnetcore50": {
        "dependencies": {
            "System.Console": "4.0.0-beta-22231"
        }
    }
}

}

我将其更改为

{
"version": "1.0.0-*",
"dependencies": {
},
"commands": {
    "run": "run"
},
"frameworks": {
    "aspnet50": {  
        "frameworkAssemblies": {
            "System.DirectoryServices": ""
        }
    },
    "aspnetcore50": {
        "dependencies": {
            "System.Console": "4.0.0-beta-22231"
        }
    }
}

}

我的program.cs是

using System;
using System.DirectoryServices;
namespace ConsoleApp
{
public class Program
{
    public void Main(string[] args)
    {
        Console.WriteLine("Hello World");
        DirectoryEntry test = new DirectoryEntry();
        Console.ReadLine();
    }
}

}

谢谢。

2 个答案:

答案 0 :(得分:4)

目前并非所有程序集都支持ASP.net Core。您的project.json文件同时启用了ASP.net核心和ASP.net50。

如果从框架中删除aspnetcore50,那么您的代码将起作用。

 {
"version": "1.0.0-*",
"dependencies": {
},
"commands": {
    "run": "run"
},
"frameworks": {
    "aspnet50": {  
        "frameworkAssemblies": {
            "System.DirectoryServices": ""
        }
    }
}

答案 1 :(得分:0)

如果您运行的是ASP.Net 5 RC 1,则需要在project.json中进行以下更改。

  "frameworks": {
    "dnx451": {
      "frameworkAssemblies": {
        "System.DirectoryServices": "4.0.0.0"
      },
      "dependencies": { }
    },
    "dnxcore50": { }
  },