WCF之“有零个操作;协定必须至少有一个操作”

来源:互联网 发布:jira linux 安装 csdn 编辑:程序博客网 时间:2024/05/22 09:44

今天在进行WCF宿主中“OpenHost”突然出现异常,异常信息如下:

ContractDescription“***”有零个操作;协定必须至少有一个操作。

英文类似:
ContractDescription '***' has zero operations; a contract must have at least one operation.

 

说来也怪,在批量“OpenHost”过程中这个异常却发生在中间某个类型上,其它大部分操作都是依葫芦画瓢进行的,对照了代码、配置文件,一直没有发现什么大问题。“google”一下结果是出来不少,却始终没发现想要的答案。

 

没办法,抛开自已的工程,看系统自已生的WCF服务是怎样。一对比,发现原来我犯了个低级错误。

在定义服务接口的时候没加“[OperationContract]“。

 

想想也是在开发过程中我们常常会先绕过WCF分布式应用,而先实现接口,但在应用时却简单的加上了[ServiceContract(Name = "**")],但接口函数上却没加“[OperationContract]“,这样可能导致运行时出现前面所说的异常。

 

当然,在我的实践中有些服务没加也照样能运行,其中原委有待细究,在此提醒大家还是按规范来,免得出错了不知从何着手。

 

 

原创粉丝点击