[MonoDevelop] [Mono-list] WCF application

Atsushi Eno atsushieno at veritas-vos-liberabit.com
Thu Dec 24 21:22:13 EST 2009


Hello,

On 2009/12/23 4:19, Daniel Soto wrote:
> Hello.
>
> I do this question in both lists, Mono and Monodevelop, because of my 
> problem applies in both.
>
> I went test the new flavours that comes with Mono, WCF support, but I 
> have some problems to test it.
>
> First, it's possible to add a service reference in Monodevelop? Not 
> yet, right? If I try to add in Web references, it does not allow 
> adding an URL in format http:// (or net.tcp//) my_address/Service.svc
>
"Add Service Reference" is not supported in MD yet. And yes, the 
existing one is for Sys.Web.Services, not WCF.

> Ok, I try to test an WCF app, but when I try to host it, an error 404 
> appears. I try to change the URL to http://my_addr/Service.svc?wsdl 
> but an error 500 appears, Application error.
>
> Ok, I change in web.config Bindings section, setting the binding 
> configuration to basicHttpBinding (instead of wsHttpBinding), running 
> it, changing the url to http://my_addr/Service.svc?wsdl, and now does 
> not appear an 500 Application Error, but appears an XML indicating 
> that an schema does not exists.
>
WSHttpBinding is not supported. And...

> Finally, I run svcutil http://my_addr/Service.svc?wsdl, It tries to 
> get service information using DISCO, but it fails. Later, it tries to 
> get service information using other method (I dont remember) but it 
> stands wait for long time.
>
I found something is wrong with mere "?wsdl" query in the latest code. 
It is very tricky to handle such a request and I had to make a lot of 
attempts (since both service contract itself and WSDL request contract 
conflict at the same URI just by different at query parameter, which 
cannot be handled at service host internals, namely, ChannelDispatcher 
and EndpointDispatcher - in short, bad design), so it is likely broken now.
As a workaround, you can probably handle it by configuring it like:
<serviceMetadataBehavior httpGetUrl="wsdl" httpGetEnabled="true" />

Atsushi Eno



More information about the Monodevelop-list mailing list