首页 > 解决方案 > WCF AddServiceEndpoint 找不到 ServiceContract 属性

问题描述

我的服务器代码已经搁置了一段时间,我回去测试它。

我们在一个类中创建一个ServiceHost,并将端点添加到ServiceHost. 当我们添加一个端点时,我们得到一个异常说:

[找不到 ServiceContract 属性。]

但是属性在那里,我添加了代码来获取属性并验证它在那里。

 public static void AddEndPoint ( ServiceHost host, string url, Type implementsType )
 {
    var binding = CreateBinding( url );



    var attrs = implementsType.GetCustomAttributes ( false );

    host.AddServiceEndpoint ( implementsType, binding, url );
}

[ServiceContract]
public interface IHelloWorldService
{
    [OperationContract]
    string SayHello ( string name );
}

我创建了一个示例sln,它在所有库都是 .net 框架库的情况下运行良好。

在常规sln中,我们的服务接口位于.net 标准 2.0 库中,我们的服务位于.net 框架库中,创建服务主机的项目是.net 框架库。我无法弄清楚为什么在 attrs 数组中查看该属性时是否存在该属性,但 AddServiceEndPoint 却找不到它。

标签: wcf

解决方案


推荐阅读