我有一个这样的webservicedefinition:
[OperationContract]
[FaultContract(typeof(Exception))]
[WebInvoke(ResponseFormat = WebMessageFormat.Xml,
BodyStyle = WebMessageBodyStyle.Wrapped,
RequestFormat = WebMessageFormat.Xml)]
SearchResponse SearchXML(SearchRequest req);
和这样的服务配置:
<service name="SearchEngine.SearchService" behaviorConfiguration="HTTPGetBehavior">
<endpoint address="SearchEngine.SearchService" behaviorConfiguration="ajaxBehavior" binding="webHttpBinding" contract="SearchEngine.ISearchInterface" />
<endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8800/SearchService" />
</baseAddresses>
</host>
</service>
我想获取 WSDL 文件,这应该可以通过这样的 HTTP-GET 请求来实现:
http://localhost:8800/SearchService?wsdl
但我得到的只是“wcf 服务不允许的方法消息”
我究竟做错了什么?我希望 WSDL 信息向外部客户端显示请求和响应的结构(以便他可以准备函数调用)
谢谢