wcf - 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 却找不到它。