ASP.NET Web API 2: Building a REST Service from Start to Finish   [electronic resource] /
Kurtz, Jamie.author.
Wortman, Brian.author.
The ASP.NET MVC Framework has always been a good platform on which to implement REST-based services, but the introduction of the ASP.NET Web API Framework raised the bar to a whole new level. Now in release version 2.1, the Web API Framework has evolved into a powerful and refreshingly usable platform. This concise book provides technical background and guidance that will enable you to best use the ASP.NET Web API 2 Framework to build world-class REST services. New content in this edition includes: New capabilities in Web API 2 (currently version 2.1). Support for partial updates, or PATCH. API versioning. Support for legacy SOAP-based operations. How to handle non-resource APIs using REST How to best expose relationships between resources JSON Web Tokens, CORS, CSRF Get ready for authors Jamie Kurtz and Brian Wortman to take you from zero to REST service hero in no time at all. No prior experience with ASP.NET Web API is required; all Web API-related concepts are introduced from basic principles and developed to the point where you can use them in a production system. A good working knowledge of C# and the .NET Framework are the only prerequisites to best benefit from this book.
Contents at a Glance; Introduction; Chapter 1: ASP.NET as a Service Framework; In the Land of JavaScript and Mobile Devices; Advantages of Using the ASP.NET Web API; Configuration; REST by Default; Abstraction with Routes; Controller Activation Is, Well, Very Nice; Simpler Extensible Processing Pipeline; Interoperability of JSON, XML, and REST; A Few Feature Highlights of the ASP.NET Web API; Summary; Chapter 2: What Is RESTful?; From RPC to REST; XML-RPC and SOAP; URIs and Resources; HTTP Verbs; HATEOAS; HTTP Status Codes; HAL, Collection+JSON, …; Summary
Chapter 3: Designing the Sample REST APITask Management Resource Types; Hypermedia Links; Modeling the URIs and HTTP Verbs; The Task-Management Data Model; Choosing Architecture Components; Data Access; Type Mapper; IoC Container; Logger; Testing Framework; Mocking Framework; Summary; Chapter 4: Building the Environment and Creating the Source Tree; Configuring the Machine; Windows 8 64-bit with .NET Framework 4.51; SQL Server 2012; Visual Studio 2013; NuGet Package Manager 2.6; Creating the Folder Structure; Creating the Solution; NuGet Config File; Adding the Projects; Basic Components
Domain ModelService Model Types; Logging; The Database; Summary; Chapter 5: Up and Down the Stack with a POST; Routing; Adding an HttpRequestMessage Argument; Adding a Model Object Argument; Attribute-Based Routing; Versioning; Implementing POST; A Custom IHttpRouteConstraint; A Custom RoutePrefixAttribute; A Custom IHttpControllerSelector; Configuration; The Demo; Dependencies; Constructor Injection of Dependencies; Configuring Ninject Dependency Injection; Container Configuration; Container Bindings; IDependencyResolver for Ninject; Completing NinjectWebCommon
NHibernate Configuration and MappingsDatabase Configuration: Overview; Adding Concurrency Support to Entities; Entity Mapping; Mapping Relationships; Database Configuration: Bringing It All Together; Managing the Unit of Work; Database Transaction Control; Diagnostic Tracing; Error Handling; Persisting a Task and Returning IHttpActionResult; New Service Model Type; Persisting the Task; IHttpActionResult; Summary; Chapter 6: Securing the Service; The Main Idea; Authentication; Authorization; Overview of the Authentication and Authorization Process; Securing the POST; The Authorization Filter
A Message Handler to Support HTTP Basic AuthenticationSecuring Non-Resource API Operations; Activate a Task; Complete a Task; Reactivate a Task; Auditing; GET a Task; Applying Token-Based Security; Token Basics; The JSON Web Token; Configuring the JwtAuthForWebAPI Package; Getting a Task Using a JWT; SSL, XSS, CORS, and CSRF; Summary; Chapter 7: Dealing with Relationships, Partial Updates, and Other Complexities; Task and User Relationships; Partial Update of a Task Using PUT/PATCH; Validation Using an Action Filter; Specialized Action Filter to Validate Task Updates
Generalized Action Filter to Validate New Tasks
Includes index.
The ASP.NET MVC Framework has always been a good platform on which to implement REST-based services, but the introduction of the ASP.NET Web API Framework raised the bar to a whole new level. Now in release version 2.1, the Web API Framework has evolved into a powerful and refreshingly usable platform. This concise book provides technical background and guidance that will enable you to best use the ASP.NET Web API 2 Framework to build world-class REST services. New content in this edition includes: New capabilities in Web API 2 (currently version 2.1). Support for partial updates, or PATCH. API versioning. Support for legacy SOAP-based operations. How to handle non-resource APIs using REST How to best expose relationships between resources JSON Web Tokens, CORS, CSRF Get ready for authors Jamie Kurtz and Brian Wortman to take you from zero to REST service hero in no time at all. No prior experience with ASP.NET Web API is required; all Web API-related concepts are introduced from basic principles and developed to the point where you can use them in a production system. A good working knowledge of C# and the .NET Framework are the only prerequisites to best benefit from this book.
Microsoft software.
Microsoft .NET Framework.
Software engineering.
Microsoft and .NET.
Software Engineering/Programming and Operating Systems.