For about an hour, all I wanted to do was use a WebGet attribute by adding this line of code to a test WCF application I was creating:
using System.ServiceModel.Web;
I went to the Add Reference dialog and looked for the assembly… But as you can see below, for this project, it wasn’t available.
The eventual solution amazed me. My Target framework was set to .Net Framework 4 Client Profile (as the Add Reference dialog above showed with Filtered to: .Net Framework 4 Client Profile). For some reason this is the default for newly created console applications.
Changing the Target framework to .Net Framework 4 solved my mystery.
These kinds of awkward behaviors are huge time killers. While I believe Microsoft is trying to hide complexity for developers—to make it “easy”—I would rather see everything happening under the covers rather than try to figure it out after the fact. Developing software is hard enough with out the tools making assumptions.
And a special thanks Patrick Cauldwell for saving me even more time searching for a solution.