我一直在构建 WCF Web 服务,并被困在 Get 工作正常的 Post & Put 方法中。我在其中提供了 .edmx。有啥解决办法吗?
Posted
技术标签:
【中文标题】我一直在构建 WCF Web 服务,并被困在 Get 工作正常的 Post & Put 方法中。我在其中提供了 .edmx。有啥解决办法吗?【英文标题】:I've been building a WCF web-service and am stucked at Post & Put methods where Get works fine.I've provided .edmx in it. Any solution?我一直在构建 WCF Web 服务,并被困在 Get 工作正常的 Post & Put 方法中。我在其中提供了 .edmx。有什么解决办法吗? 【发布时间】:2014-09-06 18:45:33 【问题描述】:我一直在构建 WCF Web 服务,但我一直在使用 Post & Put 方法。这些方法不起作用,而 Get 方法和 Delete 方法可以正常工作并提供正确的输出。我在其中提供了 .edmx 并使用它连接到数据库。尝试在 WebConfig 中编写许多行以使其工作,但没有工作。希望从这里得到解决方案。提前致谢。
我的 IService.cs 类包含这个: iservice1.cs
[运营合同] [WebInvoke(方法 = “发布”,ResponseFormat = WebMessageFormat.Json,RequestFormat = WebMessageFormat.Json,BodyStyle = WebMessageBodyStyle.Wrapped,UriTemplate = “Postmovie”)] CompositeType PostUpdatemovie(MovieTbl tbl);Service.svc.cs 包含以下内容:
公共 CompositeType PostUpdatemovie(MovieTbl tbl) CompositeType obj = new CompositeType(); //objmovie.状态 // objmovie.TorrentID 返回对象;【问题讨论】:
【参考方案1】:尝试如下更新您的网络配置:
<system.serviceModel>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
<services>
<service behaviorConfiguration="Default"
name="Service1">
<endpoint address="" behaviorConfiguration="webBehavior"
binding="webHttpBinding"
contract="IService1" />
<endpoint address="/netclients" bindingName="basicBinding" binding="basicHttpBinding" contract="IService1" />
<endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
</service>
</services>
<bindings>
<basicHttpBinding>
<binding name="basicBinding" />
</basicHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="webBehavior">
<webHttp helpEnabled="true" />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="Default">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<directoryBrowse enabled="true"/>
</system.webServer>
还有你的方法:
[OperationContract]
[WebInvoke(Method = "Post", ResponseFormat = WebMessageFormat.Json, RequestFormat = WebMessageFormat.Json, UriTemplate = "/Postmovie")]
CompositeType PostUpdatemovie(MovieTbl tbl);
【讨论】:
以上是关于我一直在构建 WCF Web 服务,并被困在 Get 工作正常的 Post & Put 方法中。我在其中提供了 .edmx。有啥解决办法吗?的主要内容,如果未能解决你的问题,请参考以下文章
WCF 服务 - 运行时看不到接口上的 ServiceContract
App force close thenewboston android教程
WCF HandleError System.InvalidOperationException 一个任务只有在它处于完成状态时才能被释放