类型“声明”是在DnsEndpointIdentity类未引用的程序集中定义的

时间:2019-05-22 15:19:49

标签: .net visual-studio reference .net-assembly

我有以下代码可以在Visual Studio 2010上成功构建。VisualStudio 2017上的相同代码会产生以下生成错误:

严重性代码描述项目文件行抑制状态 错误CS0012在未引用的程序集中定义了“声明”类型。您必须添加对程序集'System.IdentityModel,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的引用。 ConsoleApp1

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            System.ServiceModel.DnsEndpointIdentity dns = new System.ServiceModel.DnsEndpointIdentity("test");

        }
    }
}
  • 任何人都可以帮助我理解为什么我需要向该项目添加System.IdentityModel引用吗?我仅将DnsEndpointIdentity与string参数一起使用。为什么VS 2017不会自动将System.IdentityModel包含在System.ServiceModel命名空间中?这是VS 2017的错误吗?

  • DnsEndpointIdentity类具有以下属性

    公共DnsEndpointIdentity(字符串dnsName);

    公共DnsEndpointIdentity(System.IdentityModel.Claims.Claim身份);

0 个答案:

没有答案