我有几个问题可能相关,也可能不相关。我注意到,当我在 Visual Studio 中使用 Add Service Reference 添加对我的数据服务的引用时,它生成的 reference.cs 无法编译。它抱怨缺少命名空间。我可以修复它以进行编译,但是每次我更新引用时都会发生这种情况,并且在其他层面上也令人担忧,例如“这会导致其他问题”。
我还注意到,当我这样做时,我的主机服务器(托管数据服务的控制台应用程序)会记录以下内容:
An exception occurred [System.Data.Services.DataServiceException] :: The URL
representing the root of the service only supports GET requests.
这是服务配置:
<service behaviorConfiguration="behaviour" name="StatsPlus.Server.HostedServices.SPDataServiceHost">
<endpoint address="svc" binding="webHttpBinding" contract="System.Data.Services.IRequestHandler" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8752/DataService/"/>
</baseAddresses>
</host>
</service>
和行为:
<behavior name="behaviour">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
<dataContractSerializer maxItemsInObjectGraph="10"/>
</behavior>
当我尝试运行时svcutil http://localhost:8752/DataService/
,我得到了这个:
HTTP GET Error
URI: http://localhost:8752/DataService
There was an error downloading 'http://localhost:8752/DataService'.
The request failed with HTTP status 405: Method Not Allowed.
有任何想法吗?非常感激
谢谢