Live data from Hacker News

WCF is Open Source

dotnetfoundation.org

21–30 of 149 posts

Re: WCF is Open Source

#21

Earlier quoted context omitted.

> This a good thing for those companies that have lots of WCF services. I very much doubt that. WCF is one of the most over-engineered frameworks I've encountered so far, and I've seen many. It's an epitome of enterprisiness, with every miniscule detail configurable via XML, with countless layers of abstractions, factories and providers, with very specific modalities, with all kinds of pluggable serializers, with met…

Couldn't they move to a more code and convention driven config system? I know what you mean, though. I have this one web service that's the bane of my existence. No WSDL, it's WS-Transfer and MEX and WS-Sec with it's own STS...makes me weep thinking about it.

Again, very unlikely.

It will either be a godawful Fluent API on top of all the WCF craziness, or the conventions will be as unusable as they are in Entity Framework.

Old-style ASMX services were cool. Nothing fancy, no infinitely configurable doodads: just a single class annotated with attributes.

Re: WCF is Open Source

#22
The first time I had to consume WS- services in .NET, with deeply nested data types I spent a week trying to figure out WCF and the WS endpoint (which was written in Java) and gave up.

I wrote a DSL to parse the messages and just stripped the message off the network stack before it even hit the application level where WCF would handle it. It gives me shivers just thinking about it.

Re: WCF is Open Source

#24
post #7

WCF was built for the WS-* world, and as such is over-loaded with complexity that is covered up by way way too much abstraction. If you don't need WS-*, use Web API services self hosted with Katana if you need to exchange data between applications/processes instead.

Oh, don't get me started on this whole Katana/OWIN disaster. Just look at all these dependencies that are required to self-host ASP.NET application. How they managed to complicate things so much -- I don't know. NancyFX all the way.

Yeah I am not so sure I would serve content using Katana. I am using it to horizontally scale out data services used by clients around the world, hosted in Azure. It's simple to deploy and manage. I also don't have to mess with IIS, which is always a plus given how few admin resources we have to maintain our environment.

Re: WCF is Open Source

#25

Earlier quoted context omitted.

> This a good thing for those companies that have lots of WCF services. I very much doubt that. WCF is one of the most over-engineered frameworks I've encountered so far, and I've seen many. It's an epitome of enterprisiness, with every miniscule detail configurable via XML, with countless layers of abstractions, factories and providers, with very specific modalities, with all kinds of pluggable serializers, with met…

Couldn't they move to a more code and convention driven config system? I know what you mean, though. I have this one web service that's the bane of my existence. No WSDL, it's WS-Transfer and MEX and WS-Sec with it's own STS...makes me weep thinking about it.

WCF does allow for code based configuration. There are actually 3 way to configure everything in WCF: Imperative code, Declarative attributes and (xml-based) config files.

Conventions are supported as well, but is woefully underused.

That said, WCF is a beast. If you need SOAP with federated security and bells and whistles, it is a very solid choice.

If you can make it through with REST you should avoid WCF. It is a time sink.

Re: WCF is Open Source

#26

The first time I had to consume WS- services in .NET, with deeply nested data types I spent a week trying to figure out WCF and the WS endpoint (which was written in Java) and gave up. I wrote a DSL to parse the messages and just stripped the message off the network stack before it even hit the application level where WCF would handle it. It gives me shivers just thinking about it.

WCF is ridiculously complex, has poor testing options and troubleshooting deep issues basically requires turning on logging and loading a massive data dump into a reader just to get some kind of generic error.

Re: WCF is Open Source

#27

I've always been interested in WCF. This a good thing for those companies that have lots of WCF services. That being said...Scott Hanselman calls it WS-Death Star for a reason. (WS-*, heh. Nerd Jokes. Check.) Hopefully this kick starts the same kind of rapid evolution that Asp.net MVC had after it was open sourced.

> This a good thing for those companies that have lots of WCF services. I very much doubt that. WCF is one of the most over-engineered frameworks I've encountered so far, and I've seen many. It's an epitome of enterprisiness, with every miniscule detail configurable via XML, with countless layers of abstractions, factories and providers, with very specific modalities, with all kinds of pluggable serializers, with met…

> Because WS-* .

While WCF supports WS-* and is in large part organized around it, some of the complexity isn't "because WS-", its "because WCF is a higher-level abstraction that supports, among other things, WS-* ".

I mean, you can apply all that overengineered configuration to build REST services with WCF, too. You probably don't want to (unless you are already heavily invested in WCF), but you can.

Re: WCF is Open Source

#28
WCF is great if you want to make a single data service available as JSON via REST, XML via SOAP, a custom binary protocol via raw TCP, and who-knows-what else.

In practice you're almost always better off just picking a single format for your endpoint, in which case there's no reason to use WCF.

Re: WCF is Open Source

#29

Nice. WPF, please

Correct me if I'm wrong but Microsoft is not planning to make WPF and Windows Forms Open Source.

Both are probably too entangled with Windows internals. Windows Forms is essentially a wrapper around native GDI controls. WPF's rendering system is quite intertwined with the DWM

It's much easier to open-source the things with fewer dependencies, such as .NET Core, ASP.NET and other networking stuff. It's also invariably what customers are likely to want to run on Azure (or elsewhere), just maybe not with Windows underneath it.

For WPF I'm content with MS actually continuing development. WPF is the best UI framework I've used so far with a lot of good ideas that have sadly been ignored by most others. It's just sad that it got so little attention in recent years.

Re: WCF is Open Source

#30

I've always been interested in WCF. This a good thing for those companies that have lots of WCF services. That being said...Scott Hanselman calls it WS-Death Star for a reason. (WS-*, heh. Nerd Jokes. Check.) Hopefully this kick starts the same kind of rapid evolution that Asp.net MVC had after it was open sourced.

> This a good thing for those companies that have lots of WCF services. I very much doubt that. WCF is one of the most over-engineered frameworks I've encountered so far, and I've seen many. It's an epitome of enterprisiness, with every miniscule detail configurable via XML, with countless layers of abstractions, factories and providers, with very specific modalities, with all kinds of pluggable serializers, with met…

> WCF is one of the most over-engineered frameworks I've encountered so far

This may be true to an extent, but rarely will you ever need to delve into that level of minutiae (which itself is a consequence of WS-*...). I've set up custom endpoints, but that's comparable to setting up custom logging with Log4J. I've extended/written custom Message Inspectors to log/analyze/manipulate data, but that was hardly complex as well, and comparable to what you would need to do in any other environment but without support of the framework.

For me the most frustrating thing working with WCF was probably correctly configuring Windows authentication/authorization simply because there are so many different ways things can fail with similar error messages. Everything else you mentioned is stuff that you rarely need to consider.

Post reply on HN