wcf icon indicating copy to clipboard operation
wcf copied to clipboard

Udpbinding not supported

Open DiegoVil opened this issue 8 years ago • 8 comments

Hi, in .4.5 framework was one of new functionalities,now in new release of donet.is not anymore supported. The worst issue is that there is not anyworkaround to solve this...

DiegoVil avatar Apr 25 '16 09:04 DiegoVil

I meant in wcf

DiegoVil avatar Apr 25 '16 09:04 DiegoVil

Thanks for submitting the issue, @DiegoVil . Could you describe briefly how you would like to use UdpBinding? For example, do you have an existing WCF service using UdpBinding that you need to connect to from a dotnet client? From some mid-tier? Knowing the details will help us understand which features are most important.

roncain avatar Apr 25 '16 12:04 roncain

Hi, Yes of course. I have an old UDPBinding in which I do not need assuring that all packets arrives due to I update it every 24ms so if I lose one packet I do not care because in next frame I will receive another packet. Imaging something similar to high speed online games.

In my case I use it for diverse purpose one of them is mirroring one software based on (4.5 framework) in different devices as Hololens, Tablets, etc... The worst thing about this case is that I do not have a lot of alternatives. The only possible alternative is working directly UDP sockets but I also have found some problems with compatibilities with fragmented packets in UDP with Datagramsocket class with old System.Net library.

With all my respects, its a little bit annoying announcing it for WCF 4.5, maintaining it for a couple of years and then just removing for the framework. I think that maybe there are a lot of reasons I do not know, but it should be nice to have an alternative.

Anyway thank you so much for asking for my opinion. I really appreciate it.

Diego.

DiegoVil avatar Apr 25 '16 12:04 DiegoVil

What is your opinion? this is not useful at all?

DiegoVil avatar Apr 26 '16 18:04 DiegoVil

WCF 4.5 and the open source WCF are two different things. UDP hasn't been removed, as the .Net Core version of WCF didn't exist previously. We are busy building out the functionality of the features that are currently in the API surface. WCF in .Net Core is cross platform which means you can run the same code on Windows, Linux, OSX and anywhere UWP apps run. This means we need to rewrite a lot of the implementation of WCF and this takes time. When considering additional api's to add to WCF in .Net Core we do consider demand from the community as we wish to focus our efforts where they are most needed. The UDP transport started off as an extensibility sample which you can find details of here. I ran the .Net Portability Analyzer against the sample and there are some things which would need to be changed, but not much of significance. For example, .Net Core doesn't support the xml .config files so much of the code to support configuring the UDP Transport by config isn't portable. That code can simply be removed. Also the socket APM (Begin/End) methods aren't in .Net core, but they've been replaced with Task based methods. We have helper methods in our repo to map between APM and Task api's so this would require a little copying and some boiler plate wrapping. I didn't see anything in the portability report that didn't either have a simple replacement or involved code that could be simply removed. If we do add a UDP transport to .Net Core, it would be unlikely in the time frame that you would need. Your best options are to get something working using the UWP DatagramSocket class, or port the sample to .Net Core.

mconnew avatar Apr 26 '16 23:04 mconnew

Thanks for your explanation @mconnew . I have exploring the possibility to create a UWP DatagramSocket. Unfortunately I have found a bug [here] . (https://github.com/dotnet/corefx/issues/8068) I never made a portable class. I will take a look on that topic. What I understand its that I can get WCF4.5 code and make a portable class with udpbinding inside and use it in UWP app? Thanks you again for your words,

DiegoVil avatar Apr 27 '16 10:04 DiegoVil

I'm adding the label feature request so that if anybody else has interest in this binding, this will be the place for discussion and/or to register interest.

mconnew avatar May 27 '16 22:05 mconnew