Programming Books C Java PHP Python Learn more Browse Programming Books
Effective REST Services via .NET: For .NET Framework 3.5 and over one million other books are available for Amazon Kindle. Learn more
  • List Price: $49.99
  • Save: $8.81 (18%)
Usually ships within 7 to 11 days.
Ships from and sold by
Gift-wrap available.
Add to Cart
FREE Shipping on orders over $35.
Condition: Used: Good
Comment: no writing, binding good, corners bent, edge wear, some scuffs and creases, cover curled
Access codes and supplements are not guaranteed with used items.
Add to Cart
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Effective REST Services via .NET: For .NET Framework 3.5 Paperback – April 30, 2009

ISBN-13: 978-0321613257 ISBN-10: 0321613252 Edition: 1st

Buy New
Price: $41.18
25 New from $33.20 34 Used from $2.17
Amazon Price New from Used from
"Please retry"
"Please retry"
$33.20 $2.17


Frequently Bought Together

Effective REST Services via .NET: For .NET Framework 3.5 + RESTful .NET: Build and Consume RESTful Web Services with .NET 3.5 + RESTful Web Services Cookbook: Solutions for Improving Scalability and Simplicity
Price for all three: $95.59

Some of these items ship sooner than the others.

Buy the selected items together

Shop the new
New! Introducing the, a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Paperback: 480 pages
  • Publisher: Addison-Wesley Professional; 1 edition (April 30, 2009)
  • Language: English
  • ISBN-10: 0321613252
  • ISBN-13: 978-0321613257
  • Product Dimensions: 9.2 x 7 x 1 inches
  • Shipping Weight: 1.5 pounds (View shipping rates and policies)
  • Average Customer Review: 3.3 out of 5 stars  See all reviews (9 customer reviews)
  • Amazon Best Sellers Rank: #314,596 in Books (See Top 100 in Books)

Editorial Reviews

About the Author

Kenn Scribner has been writing cutting-edge, software-based books on Microsoft technologies for more than 10 years. His books include Windows Workflow Foundation Step by Step (Microsoft Press) and Understanding SOAP (SAMS). Kenn is a senior software consultant whose clients have included CBS, Burton, and Microsoft.


Scott Seely, an architect at MySpace, works on the OpenSocial API, one of the world’s most successful REST-based APIs. Before joining MySpace, he was a developer on the Windows Communication Foundation team at Microsoft. His books include Creating and Consuming Web Services in Visual Basic (Addison-Wesley) and SOAP: Cross Platform Web Service Development Using XML (Prentice Hall).


Excerpt. © Reprinted by permission. All rights reserved.

Preface for Effective REST Services via

Preface for Effective REST Services via .NET: For .NET Framework 3.5

Kenn’s Thoughts: The Road to REST, an Engineer’s Tale

It was the spring of 2008, and I had just completed some work for Justin Smith, a senior engineer and connected systems expert at Microsoft. The work involved developing two related Web sites that would consume services offered by a third Web application that would be hosted in something known as the “cloud.” After six weeks of iterative development, we had a set of Web applications that were designed to demonstrate nearly all the ways Web applications can communicate using .NET technologies.

I’d heard about REST, of course, having been fortunate enough to work with Dino Esposito on several of his ASP.NET and AJAX books. Dino is a huge REST proponent. But I admit my background was more along the lines of the SOAP protocol, and I looked at Web services more as remote method calls than creatures of the Internet ecosystem. It didn’t bother me that I needed fancy proxies to communicate with XML-based (and not JSON-based) Web services. I truly hadn’t consciously considered the notion that remote procedure call (RPC) style messaging wasn’t quite architecturally in harmony with the Internet itself.

But I’d had this nagging concern for some time. SOAP and XML-RPC services were becoming very complex, and it seemed that at every turn we were trying to solve some problem that the basic architecture of the Internet presented. Security, streaming large binary objects, browser-based proxies (for AJAX), and so forth were leading to an ever-increasing number of new specifications, each designed to layer more complexity on to what had started as a simple concept. And in most cases, we were trying to bypass the basic workings of the Internet rather than using them to our advantage.

After working with Justin, and after building a very detailed and fully functional set of Web applications that were primarily based on RESTful principles, I found I had drunk from the RESTful Kool-Aid pitcher, and I was stunned by what I had overlooked all of these years. I can remember the epiphany...I literally sat up in my chair, stunned by what I had realized.

What I had overlooked was the simplicity and elegance of the Web’s architecture and design. I had been overcome by the glamour of XML and serializing binary information for transmission in response to requests for actions. I had lost sight of the Internet’s most basic capability of asking for and receiving a resource’s representation. The simplicity and elegance of the Internet struck a new chord with me that day. Even though I had been working with Internet-based technologies for nearly ten years, I found I’d suddenly rediscovered programming for the Internet.

And the simple truth is this is not a bad thing, nor is it uncommon. REST as an architectural concept is precisely in line with the architecture of the Web itself. Any tool you have that can build Web applications can be used to build RESTful services. If you have access to the HTTP method—GET, POST, and so forth—and if you have access to the HTTP headers and entity body, you have all you need to create a RESTful service. Anything else is there only to make creating RESTful services easier by hiding some of the detail. I haven’t had the pleasure of meeting Dr. Roy Fielding, but based on his doctoral dissertation that introduces us all to the concept of REST, I’d hazard a guess that he’d prefer you understand REST at its lowest level before using frameworks that mask the underpinnings. When you do, REST makes perfect sense and things become very clear. Or at least I felt so.

Scott’s Thoughts: REST Is Best

From 2000 until the middle of 2006, I worked at Microsoft on Web services. For four of those years, I worked on Windows Communication Foundation (WCF)—that amazing, transport-agnostic, messaging-unification machine. When WCF finally came out, it supported WS-* and some very basic REST/POX messaging. A few folks on the team were hard at work adding first-class REST support in the form of URI templates and extra functionality for HTTP-hosted services that were later released in .NET 3.5. Why this focus on REST? REST was starting to get very popular, thanks to Roy Fielding’s dissertation. Like many in the Web service community, I read his dissertation many times, trying to really understand what made the Web scale as well as it did. When the WCF 3.5 bits started coming out as previews, I checked out the greatly improved REST support. I was getting excited by what I was seeing and learning. In the broader community and at work, I was finding that people were getting more and more comfortable using HTTP as a communication medium to create, retrieve, update, and delete resources.

I also started seeing the value in easy-to-type URLs. Furthermore, I found that the architecture and code just makes sense to developers. During 2006, I taught several multiday classes on WCF and gave presentations on WCF at a few conferences across the country. My talks on REST were well received. My talks on WCF internals weren’t. People appreciated the elegance of what WCF can do. They just did not see the value in the steep learning curve one had to traverse to master the technology. The thing that pushed me over to REST was the realization of why people were flocking to REST over WS-*. In general, developers used Web browsers and built Web applications long before they ever had to add a service of any kind. REST development builds on what Web developers already know, so there is less to learn. WS-* might be elegant and cover many scenarios, but it does not build on what most developers in most shops across the globe already know.

In the summer of 2008, I joined the development team at MySpace as an architect. Guess what architectural style one of the world’s largest .NET sites uses to handle access to Friends, photo albums, and other resources. Yes, it’s REST. The platform is, first and foremost, a Web platform. REST holds more value for HTTP base endpoints than a WS-* one ever will. REST integrates well with so many other platforms without a whole lot of effort. It doesn’t impose structure on the payload contents—only on the payload metadata. REST is a model that novice developers understand and that expert-level developers can easily manipulate. I love the fact that it is penetrating so much of service development. My day job involves working on OpenSocial—already one of the most successful REST APIs ever developed. Through my work with OpenSocial, I have seen that HTTP and REST compose well with many different security mechanisms. I find it interesting that WS-* protocols compose well with other XML mechanisms. REST composes with other HTTP mechanisms. After spending so many years working with SOAP and other RPC mechanisms, I like what REST has to offer.

How This Book Approaches REST

Today, we use this stuff. We build solutions based on this stuff. We like this stuff. And we’re truly glad to have this book in our hands as architects and developers. Both authors and the entire team behind this book hope you will find it informative and useful as well.

One thing we didn’t want was a 1,000-page monster. When you understand REST, the concept is actually simple, and applying .NET technologies to create RESTful solutions becomes a relatively easy task. If it can’t be explained in a few pages, something’s not right.

The first couple of chapters introduce you to the concepts involved with REST. In a sense, you’re taken back to the earliest days of the Internet to rediscover how the Internet works and how the architectural concept known as REST fits into the Internet ecosystem so well. The first chapter, “RESTful Systems: Back to the Future,” addresses REST itself, and you learn what it means to be RESTful and how to identify behaviors that are not RESTful. Chapter 2, “The HyperText Transfer Protocol and the Universal Resource Identifier,” is devoted to HTTP and the URI. These are the two fundamental tools you’ll work with when developing .NET-based solutions.

Chapters 3 and 4 dig into the client side of the equation. RESTful services are there to serve a client’s needs, and there is no better way to begin to use REST than to consume RESTful services from a client’s perspective. There you learn what works and what doesn’t, with the lessons you learn translating to design principles when you create RESTful services yourself. Chapter 3, “Desktop Client Operations,” shows you how to access RESTful services from desktop applications (both authors believe that the desktop is not a dead platform but is instead enhanced by Internet data and service access), and Chapter 4, “Web Client Operations,” shows you how to access RESTful services from Web-based applications, including Silverlight 2.0. For consistency, both chapters access a single REST service. Later chapters build individual services unique to each chapter to increase the breadth of exposure to different RESTful service implementations.

After you have a feel for how a client might use your service, it’s time to dive into server-side programming. Here the book starts with the basics: what Internet Information Services (IIS) is, how it is put together, and how you use it to implement RESTfu...

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

3.3 out of 5 stars
5 star
4 star
3 star
2 star
1 star
See all 9 customer reviews
Later, when I get more experienced, I'll come back to this book, but for now it's not that useful.
The writing style is difficult to follow because there is no clear structure to the book and no real point to any of the examples.
Definitely a book if you're looking into how to introduce RESTful architecture in your MS applications, both desktop and web.

Most Helpful Customer Reviews

9 of 9 people found the following review helpful By T. Anderson TOP 1000 REVIEWERVINE VOICE on June 23, 2009
Format: Paperback Verified Purchase
I have resisted reading about and digging into REST for a while now. Every time I would pick up an article or book I felt like I transported back to the 90's and I was reading an old HTML 2.0 book or specification. The stuff I started on the internet with. To me the REST movement is kind of like the A-HA moment of the internet programming community. Kind of like, "O... that is what they intended".

This book brought all those back in time feelings up all throughout the first 2 chapters. I must say though, that I thoroughly enjoyed reading them. The history lesson and the state of things today, where very well written and kept my attention and interest throughout both chapters. The author's do a great job of digging into the guts of the foundations of REST, which really helps in the later chapters when they discuss the .NET tools used to develop RESTful solutions.

I also like that the authors aren't RESTful zealots. They give Web Services their rightful place and do not present REST as a new silver bullet, but rather a new tool for the tool belt.

They cover a ton of stuff in the remaining chapters and appendixes including using RESTful services from desktop applications using Windows Forms and WPF, using Silverlight 2.0, JavaScript, the ASP.NET MVC Framework, WCF 3.5, IIS 7.0, and Azure. Every chapter goes deep enough into the topic to give you a great start down the right path of using the technology.

The book is a very pleasant read and is well organized.

The downloadable code is very usable, well organized, and contains some great example implementations.

I also have noticed the authors are keeping the accompanying web site up to date and have already released a code fix.

If you want to learn the ins and outs of RESTful Services using .NET technologies, this book is the ticket.

I highly recommend this book.
3 Comments Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
7 of 8 people found the following review helpful By Techie Evan on May 9, 2009
Format: Paperback
.Net developers now have several technology options for building applications that consume and/or serve up RESTful services. This book provides tutorials on potentially popular .Net 3.5 and up technology options, including the relatively new ASP.Net MVC and Azure (Cloud Computing) Services Frameworks (the latter is still a technology preview, but download links are provided). The book begins with two helpful chapters that introduce RESTful concepts in great detail and provide guiding principles for designing RESTful Services. Desktop (i.e., WinForms and Windows Presentation Foundation) and Web (i.e., Silverlight 2.0) Client technologies for consuming RESTful Services are tackled next (code samples provided include code for a simple PhotoManager Service which is discussed in greater detail in later chapters). Chapter Five (IIS [7.0] and ASP.Net Internals and Instrumentation) is a special chapter that sets things up for later discussions of server-side technologies, which starts with a discussion in Chapter Six of how to build a basic home-grown RESTful Services Framework for use with plain ASP.Net applications using only HTTPHandlers, UriTemplate, UriTemplateMatch, and UriTemplateTables. The remaining chapters then show you how it's possible to build more complex applications using increasingly more sophisticated technologies such as ASP.Net MVC, Windows Communications Framework (WCF), ADO.Net Data Services, and Azure Cloud Computing Services.

The authors do a great job introducing each technology so that even readers who may be unfamiliar with one or more of the covered technologies would still be able to follow the discussion easily if they are somewhat comfortable with XML, JSON, and LINQ. They have definite opinions about how to use some of these technologies effectively and readers will find their advice worth considering. Of course, in deciding to go for breadth of coverage, the authors can only discuss each technology to a certain level of depth.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
1 of 1 people found the following review helpful By SmallBizGuy on June 23, 2010
Format: Paperback
Definitely a book if you're looking into how to introduce RESTful architecture in your MS applications, both desktop and web.

It's not a beginner level book. It's for professional MS developers already familiar with SOA. Author reviews internals of various MS frameworks before showing how to develop a RESTful application on them, but his review is more of a refresher than a tutorial. He even goes over XML processing in .NET.

His refreshers of the frameworks and XML allows you to read without interruption. I didn't have to drop the book and pick another reference to understand any of his example applications.

Great deep dive HOW-TO code example for each framework. I didn't run the code, just reading through it was easy and enough for me.

I learned a few new things not related to REST, such as how to load ASP.NET framework without IIS!

A bit dry though; it was hard to stay focused.

You can also buy pdf from the publisher, if you prefer it like I do.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
Format: Paperback Verified Purchase
It is not the fault of the book, there are some good ideas about Rest expressed. It is simply outdated, for example try to get chapter 3 example working, and you run into one error after another, some specifically because your config is set to 3.5 build and you're using IIS7, or even when you change the build to 4.0 you get bad requests returned-500. So if you want working examples in today's world, don't buy this book.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
Format: Paperback Verified Purchase
Although there are advances in .Net 4.0, I recommend this to get a comprehensive learning on what RESTful services are in the .Net world from basics to advanced.
A lot of the core concepts ddn't change in 4.0 (or may not change in the future).
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again