WCF association, although named pipe with a non-.net application

I have heard that WCF is the new standard for networking and applications in .net. The idea also seems to make sense, providing standard interfaces for communication programs.

Here is my situation. I have a .net application. I want to chat with a ruby ​​app though channels. On the .net side (server), I would like to use WCF, while the ruby ​​side (client) will be chewing gum and duct tape.

I assume that both ends do not have to be WCF, but that will be involved in this work. Is there a standard WCF protocol for incoming requests?

+3
c # ruby pipe wcf
source share
4 answers

Using named pipe bindings for clients without WCF may be possible, but it will not be easy. You will need to send messages in the correct format for using WCF.

See the first or last entry in the WCF frame for a hint of complexity. This is not impossible, but is it worth the effort?

We recommend http transport + some text type or markup encoding, for example basicHttpBinding or webHttpBinding.

+1
source share

Depends on your bindings, you can make your WCF webHttp binding and make it calm (easier), and you just get the messages and messages. Other bindings that you will need to use SOAP headers and such to communicate with your WCF, I did not do this myself, but I'm sure that the information about it will be available for non.net applications.

0
source share

You want your contract to be as simple as possible (in terms of what types you disclose). Although I have not tried this myself, I know that this type of functionality is supported (.Net for Java is common use) and is relatively easy to do.

You do not specify which side (.Net or Ruby) will be the server, but I would expect it to be much easier to do if you host the service in WCF and destroy it from ruby. Going the other way can be a little more painful, because displacement with the internal components of WCF can be a little painful.

0
source share

Which "pipes" do you mean? You cannot use named pipe bindings with any code, not .NET.

You will probably be better off with one of the HTTP bindings like webHttpBinding or basicHttpBinding.

0
source share

All Articles