我有以下问题。让我描述一下我到目前为止所采取的步骤......
- 我在 Visual Studio 中创建了一个新的 WCF 服务应用程序
- 然后我通过 Nuget 更新了项目以获取最新的 Web http 库(webapi.dll)
- 然后我创建了一个看起来像这样的服务方法
`
[ServiceContract]
public interface IService
{
[OperationContract]
[WebInvoke(Method="POST", UriTemplate="{value}")]
string GetData(int value, Stream inputDocument);
}
`
现在尝试在浏览器中查看我的.svc会导致错误提示“对于操作中的请求 GetData 成为流,操作必须具有类型为 Stream 的单个参数”
我知道这是配置问题,我只是不知道web.config中需要更改什么请注意,这似乎是在新的 HTTP 支持之前 WCF 中的常见问题,对此我感到有些惊讶不能使用新的 API 开箱即用。
任何指针?
谢谢
[编辑] 我已经包含了我的配置...
<system.serviceModel>
<services>
<service name="MyService.Service" behaviorConfiguration="serviceBehaviour">
<endpoint behaviorConfiguration="endPointBehaviour" address="" binding="webHttpBinding" contract="MyService.IService"/>
</service>
</services>
<bindings>
<webHttpBinding>
<binding transferMode="Streamed" name="webHttpBinding" />
</webHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="endPointBehaviour">
<webHttp/>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="serviceBehaviour">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>