views:

154

answers:

6

For those just starting to learn WCF, what are the major/basic things I should look at and learn first?

What concepts would you recommend to learn first, to be productive in WCF?

What resources/articles/training/books would you recommend to someone learning WCF?

In C#, for example, one can learn LINQ at a later stage. Along similar lines, in WCF also there should be basics to learn first, and then later invest time in advanced features to enhance productivity.

+3  A: 

I like this one: http://wcfguidanceforwpf.codeplex.com/

It's aimed at WPF developers who want to learn WCF, but I would recommend it even if you aren't that familiar with WPF either.

Also, I always suggest to people to use a tutorial that shows WCF working without using Visual Studio's "Add Service Reference," which is a tool in VS that you can point at a WCF or other web service and have it generate a bunch of foundational classes that help you connect to that service easily. Most tutorials will have you create a service and then create a client for that service using Add Service Reference, at least to start with.

I highly recommend a tutorial like the above, or this one if you want to start typing sooner (bugmenot.com has devx.com logins you can use if you don't want to register) that goes beyond that and shows you how to do it "by hand", because it really reinforces the core idea of WCF, which is that if an app wants to consume a service, all it needs to know is the ABC's: the address of the service, the type of binding to use, and the contracts (the methods on the service and the classes it uses as parameters and return types).

Also note that a lot of tutorials still out there are for VS2008. Not much has changed, but one thing that can confuse newcomers is that the XML configuration for bindings has been reworked in .NET 4 / VS2010 to make better use of defaults. The config files that VS 2010 will generate for you to start with are shorter than they used to be and look like they are missing required information, but in fact they are just using defaults.

nlawalker
+3  A: 

Don't miss this GREAT Book:

alt text
Ron Jacobs, (Senior Technical Evangelist for WCF at Microsoft) wrote on its forewords that "The best testament to this is to wander the halls of building 42 in Redmond (where the WCF team works); in many of the offices you will see Programming WCF Services on the shelf."
So from that I gathered that the team at Microsoft first wrote WCF and then they bought this book to understand what they actually have written!!

But seriously, I strongly recommend this book not to only understand WCF but also to learn how Juval Löwy - one of the most prominent distributed systems experts in the world today - thinks and looks at WCF and the concept of designing Enterprise SOA applications in general.

Morteza Manavi
Great - but almost a bit more on the mid-level to advanced side - not necessarily great for beginners...
marc_s
Totally agree, BUT, if, time-wise, you can't afford to read more than one WCF book and you ignore this one, then you will be missing big time, even if you are a beginner.
Morteza Manavi
+3  A: 

The book I always recommend to get up and running in WCF quickly is Learning WCF by Michele Leroux Bustamante. She covers all the necessary topics, and in a very understandable and approachable way. This will teach you everything - basics, intermediate topics, security, transaction control and so forth - that you need to know to write high quality, useful WCF services.

alt text

Besides that book, I also really learned a lot from these two one-hour screencasts on WCF:

marc_s
+1 for the DNRTv links, especially #122.
TGnat
+2  A: 

if you want to learn the basics fast (the ABC's)

look at Dime Casts

http://www.dimecasts.net/Casts/ByTag/WCF

Videos (around 10min each)

  • Introduction to WCF: Creating your first Service
  • Migrating from .asmx web services to WCF web services
  • Learn how to consume a WCF Service
  • Taking a look at how to separate out your WCF service project into multiple parts
  • Adding IoC Support to your WCF Services

that means you can have a good idea within an hour :) epic win

dbones
The link u mentioned is very cool , thnx :-)
Wondering
A: 

Learn the ABC of WCF: "Address, Bindings, Contracts".

Best is to look for tutorials on the Internet as they have mentioned above, and to then create your own Service, host that service in a console app and then use VS2008/10 Add Service Reference to create the client interface to your wcf service.

WHen you get the hang of things, you must definitely invest in either Michelle's book or Juval's book, they are the best in the industry.

There are a lot of information which can really make it difficult to learn WCF but focus on the ABC and start with a specific binding and address type and work your way from there.

Martin