【发布时间】:2016-03-25 15:59:02
【问题描述】:
简而言之,我为我的 WCF 服务公开了一个 REST-ful 端点,如下所示:
<endpoint address="Rest" binding="webHttpBinding" behaviorConfiguration="web" contract="ServicesLayer.ServiceContract.IService" name="service-web" />
我已经将 WebInvoke 属性添加到服务接口上的所有方法中,如下所示:
[WebInvoke]
[OperationContract]
Response GetStuff(RequestBase Request);
对于具有具体请求类型的方法,一切正常。但是对于任何具有抽象请求类型的方法,例如上述 RequestBase 为抽象的方法,都会返回以下错误:无法创建抽象类。
当以 REST 方式调用此方法时,如何强制此方法将请求解释为 RequestBase 的派生类型之一?
注意:我确实尝试从 RequestBase 类中删除 'abstract' 关键字,但它仍然被解释为 RequestBase 而不是它的派生类之一,所以这并没有真正解决任何问题。
提前致谢。
【问题讨论】: