【发布时间】:2020-10-06 09:52:20
【问题描述】:
我想知道是否需要 [OperationContract] 属性?我创建了一个新的 API 端点并忘记在方法上方指定此属性,但是,我仍然能够通过 Postman 成功访问此端点。我想知道这是否是预期的行为?我记得读过 [ServiceContract] 中的方法本质上是opt-in,所以如果没有该属性,这个端点不应该是不可访问的吗?
另外,同样的推理是否适用于 [DataContract] 属性?用于向调用者发送响应的大量类尚未使用此属性进行修饰。
【问题讨论】:
-
如果不使用 Operation Contract,WCF 假定所有公共方法都将在服务边界上公开。如果您不使用数据协定,那么 WCF 将假定所有类型都应该以类似方式公开。这对您来说可能不是问题,但可能不希望将服务程序集中的所有内容也暴露给外界,因此存在这些声明性属性....
标签: wcf wcf-binding wcf-rest