我安装了mono-2.6.7和WCF服务:
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="RestB"><webHttp/></behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<services>
<service name="Rest">
<endpoint address="" behaviorConfiguration="RestB" binding="webHttpBinding" contract="Rest" />
</service>
</services>
</system.serviceModel>
有效。
我想使用多个端点,一旦指定了地址,我就会一直收到错误,所以我决定尝试单声道2.8.2。在安装2.8.2之后(添加了单声道抱怨的serviceBehavior之后)我开始得到:
"HttpListenerContext does not match any of the registered channels"
System.InvalidOperationException: HttpListenerContext does not match any of the registered channels
at System.ServiceModel.Channels.Http.HttpListenerManager.ProcessNewContext (System.ServiceModel.Channels.Http.HttpContextInfo ctxi) [0x00000] in :0
at System.ServiceModel.Channels.SvcHttpHandler.ProcessRequest (System.Web.HttpContext context) [0x00000] in :0
at System.Web.HttpApplication+c__Iterator2.MoveNext () [0x00000] in :0
at System.Web.HttpApplication.Tick () [0x00000] in :0
尝试访问在mono-2.6.7中使用的网址时。
我尝试使用mod-mono-server2和mod-mono-server4。
我试图查找这个问题,但我找不到任何东西。
有人能向我展示一个具有多个端点的mono-2.8.2或mono-2.6.7配置的WCF服务的工作示例吗?
更新:恢复到mono-2.6.7之后,上面显示的我的服务'Rest'再次工作。
先谢谢大师
由于 Tymek
答案 0 :(得分:1)
问题(影响2.10)是UriTemplate / {var1} / {var2}在2.8和2.10.1中不起作用。我用UriTemplate替换它们?x = {var1}&amp; y = {var2}。不理想,但现在会为我做。
答案 1 :(得分:0)
最后一个问题非常陈旧,问题仍然发生在单声道2.10中。幸运的是,有一个新项目将WCF引入Linux。
新图书馆位于此处
我将在Ubuntu中尝试它们,我将发布有关它的更新。
https://github.com/dotnet/wcf/blob/master/Documentation/building/unix-instructions.md