PROFESSIONAL ASP.NET MVC 4

Size: px
Start display at page:

Download "PROFESSIONAL ASP.NET MVC 4"

Transcription

1

2

3 PROFESSIONAL ASP.NET MVC 4 FOREWORD xxvii INTRODUCTION xxix CHAPTER 1 Getting Started CHAPTER 2 Controllers CHAPTER 3 Views CHAPTER 4 Models CHAPTER 5 Forms and HTML Helpers CHAPTER 6 Data Annotations and Validation CHAPTER 7 Membership, Authorization, and Security CHAPTER 8 Ajax CHAPTER 9 Routing CHAPTER 10 NuGet CHAPTER 11 ASP.NET Web API CHAPTER 12 Dependency Injection CHAPTER 13 Unit Testing CHAPTER 14 Extending MVC CHAPTER 15 Advanced Topics CHAPTER 16 Real-World ASP.NET MVC: Building the NuGet.org Website INDEX

4

5 PROFESSIONAL ASP.NET MVC 4

6

7 PROFESSIONAL ASP.NET MVC 4 Jon Galloway Phil Haack Brad Wilson K. Scott Allen

8 Professional ASP.NET MVC 4 Published by John Wiley & Sons, Inc Crosspoint Boulevard Indianapolis, IN Copyright 2012 by John Wiley & Sons, Inc., Indianapolis, Indiana Published simultaneously in Canada ISBN: ISBN: (ebk) ISBN: (ebk) ISBN: (ebk) Manufactured in the United States of America No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) , fax (978) Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) , fax (201) , or online at Limit of Liability/Disclaimer of Warranty: The publisher and the author make no representations or warranties with respect to the accuracy or completeness of the contents of this work and specifically disclaim all warranties, including without limitation warranties of fitness for a particular purpose. No warranty may be created or extended by sales or promotional materials. The advice and strategies contained herein may not be suitable for every situation. This work is sold with the understanding that the publisher is not engaged in rendering legal, accounting, or other professional services. If professional assistance is required, the services of a competent professional person should be sought. Neither the publisher nor the author shall be liable for damages arising herefrom. The fact that an organization or Web site is referred to in this work as a citation and/or a potential source of further information does not mean that the author or the publisher endorses the information the organization or Web site may provide or recommendations it may make. Further, readers should be aware that Internet Web sites listed in this work may have changed or disappeared between when this work was written and when it is read. For general information on our other products and services please contact our Customer Care Department within the United States at (877) , outside the United States at (317) or fax (317) Wiley publishes in a variety of print and electronic formats and by print-on-demand. Some material included with standard print versions of this book may not be included in e-books or in print-on-demand. If this book refers to media such as a CD or DVD that is not included in the version you purchased, you may download this material at For more information about Wiley products, visit Library of Congress Control Number: Trademarks: Wiley, the Wiley logo, Wrox, the Wrox logo, Programmer to Programmer, and related trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries, and may not be used without written permission. All other trademarks are the property of their respective owners. John Wiley & Sons, Inc., is not associated with any product or vendor mentioned in this book.

9 To my wife, Rachel, my daughters, Rosemary, Esther, and Ellie, and to you for reading this book. Enjoy! Jon Galloway My wife, Akumi, deserves to have her name on the cover as much as I do, for all her support made this possible. And thanks to Cody for his infectious happiness. Phil Haack To Potten on Potomac. K. Scott Allen

10

11 ABOUT THE AUTHORS JON GALLOWAY works at Microsoft as a Windows Azure Technical Evangelist focused on the ASP.NET platform. He wrote the MVC Music Store tutorial, helped organize mvcconf and aspconf (free online conferences for the ASP.NET community), and speaks at conferences and Web Camps worldwide. He also has worked in a wide range of web development shops, from scrappy startups to large financial companies. He s part of the Herding Code podcast ( blogs at and twitters He lives in San Diego with his wife, three daughters, and a bunch of avocado trees. PHIL HAACK works at GitHub, striving to make Git and GitHub better for developers on Windows. Prior to joining GitHub, Phil was a Senior Program Manager with the ASP.NET team whose areas of responsibility included ASP.NET MVC and NuGet. As a code junkie, Phil loves to craft software. Not only does he enjoy writing software, he enjoys writing about software and software management on his blog, BRAD WILSON works for Microsoft as a Senior Software Developer on the Azure Application Platform and Tools team on the ASP.NET MVC and Web API projects. Prior to ASP.NET, Brad also worked on the CodePlex and the Patterns and Practices teams at Microsoft, and has acted as a developer, consultant, architect, team lead, and CTO at various software companies for nearly 20 years. He s the co-author of the xunit.net open source developer testing framework, maintains a blog focused primarily on ASP.NET topics at and tweets Brad lives in beautiful Redmond, Washington. K. SCOTT ALLEN is the founder of OdeToCode LLC and a software consultant. Scott has 20 years of commercial software development experience across a wide range of technologies. He has delivered software products for embedded devices, Windows desktop, web, and mobile platforms. He has developed web services for Fortune 50 companies and firmware for startups. Scott is also a speaker at international conferences and delivers classroom training and mentoring to companies around the world.

12 ABOUT THE TECHNICAL EDITOR EILON LIPTON joined the ASP.NET team as a developer at Microsoft in On this team, he has worked on areas ranging from data source controls to localization to the UpdatePanel control. That team is now part of the Azure Application Platform Team, where Eilon is the principal development manager for ASP.NET MVC, ASP.NET Web API, and Entity Framework. Eilon is also a speaker on a variety of ASP.NET-related topics at conferences worldwide. He graduated from Boston University with a dual degree in Math and Computer Science. In his spare time Eilon spends time in his garage workshop building what he considers to be well-designed furniture. If you know anyone who needs a coffee table that s three feet tall and has a slight slope to it, send him an .

13 CREDITS ACQUISITIONS EDITOR Mary James PROJECT EDITOR John Sleeva TECHNICAL EDITOR Eilon Lipton PRODUCTION EDITOR Daniel Scribner COPY EDITOR Caroline Johnson EDITORIAL MANAGER Mary Beth Wakefi eld FREELANCER EDITORIAL MANAGER Rosemarie Graham ASSOCIATE DIRECTOR OF MARKETING David Mayhew MARKETING MANAGER Ashley Zurcher BUSINESS MANAGER Amy Knies PRODUCTION MANAGER Tim Tate VICE PRESIDENT AND EXECUTIVE GROUP PUBLISHER Richard Swadley VICE PRESIDENT AND EXECUTIVE PUBLISHER Neil Edde ASSOCIATE PUBLISHER Jim Minatel PROJECT COORDINATOR, COVER Katie Crocker PROOFREADER Louise Watson, Word One INDEXER Ron Strauss COVER DESIGNER LeAndra Young COVER IMAGE David Madison / Getty Images

14

15 ACKNOWLEDGMENTS THANKS TO FAMILY AND FRIENDS who graciously acted as if Jon without sleep is someone you d want to spend time with. Thanks to the whole ASP.NET team for making work fun since 2002, and especially to Brad Wilson and Phil Haack for answering tons of random questions. Thanks to Warren G. Harding for normalcy. Thanks to Philippians 4:4 9 for continually reminding me which way is up. Jon Galloway THANKS GO TO MY LOVELY WIFE, Akumi, for her support, which went above and beyond all expectations and made this possible. I d like to also give a shout out to my son, Cody, for his sage advice, delivered as only a two-year-old can deliver it. I m sure he ll be embarrassed 10 years from now that I used such an anachronism ( shout out ) in my acknowledgment to him. Thanks go to my daughter, Mia, as her smile lights up the room like unicorns. Phil Haack

16

17 CONTENTS FOREWORD INTRODUCTION xxvii xxix CHAPTER 1: GETTING STARTED 1 A Quick Introduction to ASP.NET MVC 1 How ASP.NET MVC Fits in with ASP.NET 2 The MVC Pattern 2 MVC as Applied to Web Frameworks 3 The Road to MVC 4 3 ASP.NET MVC 1 Overview 4 ASP.NET MVC 2 Overview 4 ASP.NET MVC 3 Overview 5 MVC 4 Overview 10 ASP.NET Web API 10 Enhancements to Default Project Templates 11 Mobile Project Template using jquery Mobile 13 Display Modes 14 Bundling and Minifi cation 14 Included Open Source Libraries 15 Miscellaneous Features 15 Open Source Release 17 Creating an MVC 4 Application 17 Software Requirements for ASP.NET MVC 4 17 Installing ASP.NET MVC 4 18 Installing the MVC 4 Development Components 18 Installing MVC 4 on a Server 18 Creating an ASP.NET MVC 4 Application 19 The New ASP.NET MVC 4 Dialog 20 Application Templates 20 View Engines 22 Testing 22 The MVC Application Structure 24 ASP.NET MVC and Conventions 27 Convention over Confi guration 28 Conventions Simplify Communication 29 Summary 29

18 CONTENTS CHAPTER 2: CONTROLLERS 31 The Controller s Role 31 A Sample Application: The MVC Music Store 34 Controller Basics 36 A Simple Example: The Home Controller 37 Writing Your First Controller 40 Creating the New Controller 40 Writing Your Action Methods 42 A Few Quick Observations 43 Parameters in Controller Actions 43 Summary 46 CHAPTER 3: VIEWS 47 The Purpose of Views 48 Specifying a View 49 ViewData and ViewBag 51 Strongly Typed Views 52 View Models 54 Adding a View 54 Understanding the Add View Dialog Options 55 The Razor View Engine 57 What Is Razor? 57 Code Expressions 59 HTML Encoding 61 Code Blocks 62 Razor Syntax Samples 63 Implicit Code Expression 63 Explicit Code Expression 63 Unencoded Code Expression 64 Code Block 64 Combining Text and Markup 64 Mixing Code and Plain Text 65 Escaping the Code Delimiter 65 Server-Side Comment 65 Calling a Generic Method 66 Layouts 66 ViewStart 69 Specifying a Partial View 69 Summary 70 xvi

19 CONTENTS CHAPTER 4: MODELS 71 Modeling the Music Store 72 Scaffolding a Store Manager 74 What Is Scaffolding? 74 Empty Controller 75 Controller with Empty Read/Write Actions 75 API Controller with Empty Read/Write Actions 75 Controller with Read/Write Actions and Views, Using Entity Framework 75 Scaffolding and the Entity Framework 76 Code First Conventions 77 The DbContext Class 77 Executing the Scaffolding Template 78 The Data Context 79 The StoreManagerController 79 The Views 81 Executing the Scaffolded Code 82 Creating Databases with the Entity Framework 82 Using Database Initializers 83 Seeding a Database 84 Editing an Album 86 Building a Resource to Edit an Album 86 Models and View Models Redux 88 The Edit View 88 Responding to the Edit POST Request 89 The Edit Happy Path 90 The Edit Sad Path 90 Model Binding 91 The DefaultModelBinder 91 Explicit Model Binding 92 Summary 94 CHAPTER 5: FORMS AND HTML HELPERS 95 Using Forms 95 The Action and the Method 96 To GET or to POST? 97 Searching for Music with a Search Form 97 Searching for Music by Calculating the Action Attribute Value 99 HTML Helpers 100 Automatic Encoding 100 xvii

20 CONTENTS Making Helpers Do Your Bidding 101 Inside HTML Helpers 102 Setting Up the Album Edit Form 102 Html.BeginForm 102 Html.ValidationSummary 103 Adding Inputs 103 Html.TextBox and Html.TextArea 104 Html.Label 105 Html.DropDownList and Html.ListBox 105 Html.ValidationMessage 107 Helpers, Models, and View Data 107 Strongly Typed Helpers 109 Helpers and Model Metadata 110 Templated Helpers 111 Helpers and ModelState 112 Other Input Helpers 112 Html.Hidden 112 Html.Password 112 Html.RadioButton 113 Html.CheckBox 113 Rendering Helpers 113 Html.ActionLink and Html.RouteLink 114 URL Helpers 114 Html.Partial and Html.RenderPartial 115 Html.Action and Html.RenderAction 116 Passing Values to RenderAction 117 Cooperating with the ActionName Attribute 117 Summary 118 CHAPTER 6: DATA ANNOTATIONS AND VALIDATION 119 Annotating Orders for Validation 120 Using Validation Annotations 122 Required 122 StringLength 122 RegularExpression 123 Range 123 Validation Attributes from System.Web.Mvc 124 Custom Error Messages and Localization 125 Looking behind the Annotation Curtain 125 Validation and Model Binding 126 Validation and Model State 126 xviii

21 CONTENTS Controller Actions and Validation Errors 127 Custom Validation Logic 128 Custom Annotations 129 IValidatableObject 132 Display and Edit Annotations 133 Display 133 ScaffoldColumn 134 DisplayFormat 134 ReadOnly 134 DataType 135 UIHint 135 HiddenInput 135 Summary 135 CHAPTER 7: MEMBERSHIP, AUTHORIZATION, AND SECURITY 137 Using the Authorize Attribute to Require Login 139 Securing Controller Actions 140 How the AuthorizeAttribute Works with Forms Authentication and the AccountController 143 Windows Authentication in the Intranet Application Template 145 Securing Entire Controllers 146 Securing Your Entire Application Using a Global Authorization Filter 147 Using the Authorize Attribute to Require Role Membership 148 Extending Roles and Membership 149 External Login via OAuth and OpenID 150 Registering External Login Providers 150 Confi guring OpenID Providers 152 Confi guring OAuth Providers 155 Security Implications of External Logins 155 Trusted External Login Providers 155 Require SSL for Login 156 Understanding the Security Vectors in a Web Application 157 Threat: Cross-Site Scripting 157 Threat Summary 157 Passive Injection 157 Active Injection 160 Preventing XSS 162 Threat: Cross-Site Request Forgery 167 Threat Summary 167 Preventing CSRF Attacks 169 Threat: Cookie Stealing 171 xix

22 CONTENTS Threat Summary 171 Preventing Cookie Theft with HttpOnly 172 Threat: Over-Posting 172 Threat Summary 173 Preventing Over-Posting with the Bind Attribute 174 Threat: Open Redirection 175 Threat Summary 175 Protecting Your ASP.NET MVC 1 and MVC 2 Applications 179 Taking Additional Actions When an Open Redirect Attempt Is Detected 182 Open Redirection Summary 183 Proper Error Reporting and the Stack Trace 183 Using Confi guration Transforms 184 Using Retail Deployment Confi guration in Production 185 Using a Dedicated Error Logging System 185 Security Recap and Helpful Resources 185 Summary 187 CHAPTER 8: AJAX 189 jquery 190 jquery Features 190 The jquery Function 190 jquery Selectors 192 jquery Events 192 jquery and Ajax 193 Unobtrusive JavaScript 193 Using jquery 194 Custom Scripts 195 Placing Scripts in Sections 195 The Rest of the Scripts 196 Ajax Helpers 196 Ajax ActionLinks 197 HTML 5 Attributes 199 Ajax Forms 200 Client Validation 202 jquery Validation 202 Custom Validation 203 IClientValidatable 204 Custom Validation Script Code 205 Beyond Helpers 207 jquery UI 208 Autocomplete with jquery UI 209 xx

23 CONTENTS Adding the Behavior 210 Building the Data Source 210 JSON and Client-Side Templates 212 Adding Templates 212 Modifying the Search Form 213 Getting JSON 214 jquery.ajax for Maximum Flexibility 216 Improving Ajax Performance 217 Using Content Delivery Networks 217 Script Optimizations 217 Bundling and Minifi cation 218 Summary 219 CHAPTER 9: ROUTING 221 Uniform Resource Locators 222 Introduction to Routing 223 Comparing Routing to URL Rewriting 223 Defi ning Routes 224 Route URLs 224 Route Values 226 Route Defaults 227 Route Constraints 230 Named Routes 231 MVC Areas 233 Area Route Registration 233 Area Route Confl icts 234 Catch-All Parameter 234 Multiple URL Parameters in a Segment 235 StopRoutingHandler and IgnoreRoute 236 Debugging Routes 237 Under the Hood: How Routes Generate URLs 239 High-Level View of URL Generation 239 A Detailed Look at URL Generation 240 Ambient Route Values 242 Overfl ow Parameters 244 More Examples of URL Generation with the Route Class 244 Under the Hood: How Routes Tie Your URL to an Action 245 The High-Level Request Routing Pipeline 246 RouteData 246 Custom Route Constraints 246 Using Routing with Web Forms 247 Summary 248 xxi

24 CONTENTS CHAPTER 10: NUGET 249 Introduction to NuGet 249 Installing NuGet 250 Adding a Library as a Package 252 Finding Packages 252 Installing a Package 254 Updating a Package 256 Recent Packages 257 Package Restore 257 Using the Package Manager Console 259 Creating Packages 262 Packaging a Project 262 Packaging a Folder 263 NuSpec File 263 Metadata 264 Dependencies 266 Specifying Files to Include 267 Tools 268 Framework and Profi le Targeting 271 Prerelease Packages 272 Publishing Packages 272 Publishing to NuGet.org 273 Using NuGet.exe 274 Using the Package Explorer 275 Summary 278 CHAPTER 11: ASP.NET WEB API 279 Defining ASP.NET Web API 280 Getting Started with Web API 280 Writing an API Controller 281 Examining the Sample ValuesController 282 Async by Design: IHttpController 283 Incoming Action Parameters 284 Action Return Values, Errors, and Asynchrony 284 Configuring Web API 285 Confi guration in Web-Hosted Web API 286 Confi guration in Self-Hosted Web API 286 Confi guration in Third-Party Hosts 287 Adding Routes to Your Web API 287 Binding Parameters 288 xxii

25 CONTENTS Filtering Requests 290 Enabling Dependency Injection 291 Exploring APIs Programmatically 292 Tracing the Application 293 Web API Example: ProductsController 293 Summary 296 CHAPTER 12: DEPENDENCY INJECTION 297 Software Design Patterns 297 Design Pattern: Inversion of Control 298 Design Pattern: Service Locator 300 Strongly Typed Service Locator 300 Weakly Typed Service Locator 301 The Pros and Cons of Service Locators 304 Design Pattern: Dependency Injection 304 Constructor Injection 304 Property Injection 305 Dependency Injection Containers 306 Dependency Resolution in MVC 307 Singly Registered Services in MVC 308 Multiply Registered Services in MVC 309 Arbitrary Objects in MVC 311 Creating Controllers 311 Creating Views 312 Dependency Resolution in Web API 313 Singly Registered Services in Web API 314 Multiply Registered Services in Web API 315 Arbitrary Objects in Web API 316 Dependency Resolvers in MVC vs. Web API 316 Summary 316 CHAPTER 13: UNIT TESTING 317 The Meaning of Unit Testing and Test-Driven Development 318 Defi ning Unit Testing 318 Testing Small Pieces of Code 318 Testing in Isolation 318 Testing Only Public Endpoints 319 Automated Results 319 Unit Testing as a Quality Activity 319 Defi ning Test-Driven Development 320 The Red/Green Cycle 320 xxiii

26 CONTENTS Refactoring 321 Structuring Tests with Arrange, Act, Assert 321 The Single Assertion Rule 322 Creating a Unit Test Project 322 Examining the Default Unit Tests 323 Test Only the Code You Write 327 Tips and Tricks for Unit Testing ASP.NET MVC Applications 328 Testing Controllers 328 Keeping Business Logic out of Your Controllers 328 Passing Service Dependencies via Constructor 329 Favoring Action Results over HttpContext Manipulation 330 Favoring Action Parameters over UpdateModel 331 Using Action Filters for Orthogonal Activities 332 Testing Routes 333 Testing Calls to IgnoreRoute 333 Testing Calls to MapRoute 334 Testing Unmatched Routes 335 Testing Validators 335 Summary 339 CHAPTER 14: EXTENDING MVC 341 Extending Models 342 Turning Request Data into Models 342 Exposing Request Data with Value Providers 342 Creating Models with Model Binders 343 Describing Models with Metadata 348 Validating Models 350 Extending Views 354 Customizing View Engines 354 Writing HTML Helpers 356 Writing Razor Helpers 357 Extending Controllers 358 Selecting Actions 358 Choosing Action Names with Name Selectors 358 Filtering Actions with Method Selectors 358 Action Filters 359 Authorization Filters 360 Action and Result Filters 360 Exception Filters 361 Providing Custom Results 361 Summary 363 xxiv

27 CONTENTS CHAPTER 15: ADVANCED TOPICS 365 Mobile Support 365 Adaptive Rendering 366 The Viewport Meta Tag 368 Adaptive Styles Using CSS Media Queries 368 Display Modes 370 Layout and Partial View Support 371 Custom Display Modes 371 Mobile Site Template 372 Advanced Razor 373 Templated Razor Delegates 373 View Compilation 374 Advanced View Engines 376 Confi guring a View Engine 377 Finding a View 377 The View Itself 378 Alternative View Engines 380 New View Engine or New ActionResult? 381 Advanced Scaffolding 381 Customizing T4 Code Templates 382 The MvcScaffolding NuGet Package 383 Updated Add Controller Dialog Options 383 Using the Repository Template 384 Adding Scaffolders 386 Additional Resources 386 Advanced Routing 386 RouteMagic 387 Editable Routes 387 Advanced Templates 391 The Default Templates 392 MVC Futures and Template Defi nitions 392 Template Selection 395 Custom Templates 396 Advanced Controllers 397 Defi ning the Controller: The IController Interface 397 The ControllerBase Abstract Base Class 398 The Controller Class and Actions 399 Action Methods 401 The ActionResult 401 xxv

28 CONTENTS Action Result Helper Methods 402 Action Result Types 404 Implicit Action Results 408 Action Invoker 410 How an Action Is Mapped to a Method 410 Invoking Actions 414 Using Asynchronous Controller Actions 414 Choosing Synchronous versus Asynchronous Pipelines 416 Writing Asynchronous Action Methods 416 Performing Multiple Parallel Operations 417 MVC 2 and 3 Using AsyncController 419 Summary 421 CHAPTER 16: REAL-WORLD ASP.NET MVC: BUILDING THE NUGET.ORG WEBSITE 423 May the Source Be with You 424 WebActivator 425 ASP.NET Dynamic Data 426 Exception Logging 430 Profiling 431 Data Access 434 EF Code-Based Migrations 434 Membership 436 Other Useful NuGet Packages 438 T4MVC 438 WebBackgrounder 438 Lucene.NET 439 AnglicanGeek.MarkdownMailer 439 Ninject 440 Summary 440 INDEX 443 xxvi

29 FOREWORD I m thrilled to introduce this book covering the latest release of ASP.NET MVC, written by an outstanding team of authors. They are my friends, but more importantly, they are fantastic technologists. Phil Haack was the Program Manager ASP.NET MVC from the very start. With a background rooted in community and open source, I count him not only as an amazing technologist but also a close friend. While at Microsoft, Phil also worked on a new.net Package Manager called NuGet. Brad Wilson is not only my favorite skeptic but also a talented Developer at Microsoft working on ASP.NET MVC. From Dynamic Data to Data Annotations to Testing and more, there s no end to Brad s knowledge as a programmer. He s worked on many open source projects, such as XUnit.NET, and continues to push people both inside and outside Microsoft towards the light. Jon Galloway is a Technical Evangelist at Microsoft focused on Azure and ASP.NET. In that role, he s had the opportunity to work with thousands of developers who are both new to and experienced with ASP.NET MVC. He s the author of the MVC Music Store tutorial, which has helped hundreds of thousands of new developers write their first ASP.NET MVC applications. Jon also helped organize mvcconf and aspconf a series of free, online conferences for ASP.NET developers. His interactions with the diverse ASP.NET community give him some great insights on how developers can begin, learn, and master ASP.NET MVC. And last but not least, K. Scott Allen rounds out the group, not just because of his wise decision to use his middle name to sound smarter, but also because he brings his experience and wisdom as a world-renowned trainer. Scott Allen is a member of the Pluralsight technical staff and has worked on websites for Fortune 50 companies, as well as consulted with startups. He is kind, thoughtful, respected, and above all, knows his stuff backwards and forwards. These fellows have teamed up to take this ASP.NET MVC 4 book to the next level, as the ASP.NET web development platform continues to grow. The platform currently is used by millions of developers worldwide. A vibrant community supports the platform, both online and offline; the online forums at average thousands of questions and answers a day. ASP.NET and ASP.NET MVC 4 power news sites, online retail stores, and perhaps your favorite social networking site. Your local sports team, book club, or blog uses ASP.NET MVC 4, as well. When it was introduced, ASP.NET MVC broke a lot of ground. Although the pattern was old, it was new to many in the existing ASP.NET community; it walked a delicate line between productivity and control, power and flexibility. Today, to me, ASP.NET MVC 4 represents choice your choice of language, your choice of frameworks, your choice of open source libraries, your choice of patterns. Everything is pluggable. MVC 4 epitomizes absolute control of your environment if you like something, use it; if you don t like something, change it. You can unit test how you want, create components as you want, and use your choice of JavaScript framework.

30 ASP.NET MVC 4 brings you a new ASP.NET Web API (a new framework for building HTTP services), updated default project templates that leverage modern web standards, solid mobile web application support, enhanced support for asynchronous methods, and more. Just as exciting, the ASP.NET MVC code is now released under an open source license that accepts contributions from the developer community. Perhaps code you write will ship with the next version of ASP.NET MVC! I encourage you to visit for fresh content, new samples, videos, and tutorials. We all hope this book, and the knowledge within, represents the next step for you in your mastery of ASP.NET MVC 4. Scott Hanselman Principal Community Architect Azure Web Team Microsoft

Professional ASP.NET MVC 4

Professional ASP.NET MVC 4 Professional ASP.NET MVC 4 Galloway, J ISBN-13: 9781118348468 Table of Contents FOREWORD xxvii INTRODUCTION xxix CHAPTER 1: GETTING STARTED 1 A Quick Introduction to ASP.NET MVC 1 How ASP.NET MVC Fits

More information

PROFESSIONAL ASP.NET MVC 5

PROFESSIONAL ASP.NET MVC 5 PROFESSIONAL ASP.NET MVC 5 FOREWORD...................................................... xxvii INTRODUCTION................................................... xxix CHAPTER 1 Getting Started..........................................

More information

Course Outline. Developing Web Applications with ASP.Net MVC 5. Course Description: Pre-requisites: Course Content:

Course Outline. Developing Web Applications with ASP.Net MVC 5. Course Description: Pre-requisites: Course Content: Developing Web Applications with ASP.Net MVC 5 Course Description: The Model View Controller Framework in ASP.NET provides a new way to develop Web applications for the Microsoft.NET platform. Differing

More information

7 Windows Tweaks. A Comprehensive Guide to Customizing, Increasing Performance, and Securing Microsoft Windows 7. Steve Sinchak

7 Windows Tweaks. A Comprehensive Guide to Customizing, Increasing Performance, and Securing Microsoft Windows 7. Steve Sinchak Take control of Windows 7 Unlock hidden settings Rev up your network Disable features you hate, for good Fine-tune User Account control Turbocharge online speed Master the taskbar and start button Customize

More information

Linux Command Line and Shell Scripting Bible. Third Edtion

Linux Command Line and Shell Scripting Bible. Third Edtion Linux Command Line and Shell Scripting Bible Third Edtion Linux Command Line and Shell Scripting BIBLE Third Edition Richard Blum Christine Bresnahan Linux Command Line and Shell Scripting Bible, Third

More information

Join the p2p.wrox.com. Wrox Programmer to Programmer. Beginning PHP 5.3. Matt Doyle

Join the p2p.wrox.com. Wrox Programmer to Programmer. Beginning PHP 5.3. Matt Doyle Join the discussion @ p2p.wrox.com Wrox Programmer to Programmer Beginning PHP 5.3 Matt Doyle Programmer to Programmer Get more out of WROX.com Interact Take an active role online by participating in our

More information

PROFESSIONAL ASP.NET MVC 3

PROFESSIONAL ASP.NET MVC 3 PROFESSIONAL ASP.NET MVC 3 FOREWORD............................................................... xxiii INTRODUCTION............................................................ xxv CHAPTER 1 Getting Started..................................................1

More information

Beginning Web Programming with HTML, XHTML, and CSS. Second Edition. Jon Duckett

Beginning Web Programming with HTML, XHTML, and CSS. Second Edition. Jon Duckett Beginning Web Programming with HTML, XHTML, and CSS Second Edition Jon Duckett Beginning Web Programming with HTML, XHTML, and CSS Introduction............................................... xxiii Chapter

More information

Linux Command Line and Shell Scripting Bible

Linux Command Line and Shell Scripting Bible Linux Command Line and Shell Scripting Bible Richard Blum Wiley Publishing, Inc. Linux Command Line and Shell Scripting Bible Linux Command Line and Shell Scripting Bible Richard Blum Wiley Publishing,

More information

Beginning Transact-SQL with SQL Server 2000 and Paul Turley with Dan Wood

Beginning Transact-SQL with SQL Server 2000 and Paul Turley with Dan Wood Beginning Transact-SQL with SQL Server 2000 and 2005 Paul Turley with Dan Wood Beginning Transact-SQL with SQL Server 2000 and 2005 Beginning Transact-SQL with SQL Server 2000 and 2005 Paul Turley with

More information

Professional ASP.NET 2.0 Databases. Thiru Thangarathinam

Professional ASP.NET 2.0 Databases. Thiru Thangarathinam Professional ASP.NET 2.0 Databases Thiru Thangarathinam Professional ASP.NET 2.0 Databases Professional ASP.NET 2.0 Databases Thiru Thangarathinam Professional ASP.NET 2.0 Databases Published by Wiley

More information

Mastering UNIX Shell Scripting

Mastering UNIX Shell Scripting Mastering UNIX Shell Scripting Bash, Bourne, and Korn Shell Scripting for Programmers, System Administrators, and UNIX Gurus Second Edition Randal K. Michael Wiley Publishing, Inc. Mastering UNIX Shell

More information

Study Guide. Robert Schmidt Dane Charlton

Study Guide. Robert Schmidt Dane Charlton Study Guide Study Guide Robert Schmidt Dane Charlton Senior Acquisitions Editor: Kenyon Brown Development Editor: Candace English Technical Editors: Eric Biller and Brian Atkinson Production Editor: Christine

More information

Hands-On Oracle Application Express Security

Hands-On Oracle Application Express Security Hands-On Oracle Application Express Security BUILDING SECURE APEX APPLICATIONS Recx Hands-On Oracle Application Express Security: Building Secure Apex Applications Published by John Wiley & Sons, Inc.

More information

Linux. The book you need to succeed! Boot up to Ubuntu, Fedora, KNOPPIX, Debian, opensuse, and 13 Other Distributions Edition.

Linux. The book you need to succeed! Boot up to Ubuntu, Fedora, KNOPPIX, Debian, opensuse, and 13 Other Distributions Edition. DVD and CD-ROM Included Run or install 18 different Linux distributions from the multi-boot DVD and CD-ROM! Christopher Negus Linux 2009 Edition Boot up to Ubuntu, Fedora, KNOPPIX, Debian, opensuse, and

More information

Babu Madhav Institute of information technology 2016

Babu Madhav Institute of information technology 2016 Course Code: 060010602 Course Name: Web Development using ASP.NET MVC Unit 1 Short Questions 1. What is an ASP.NET MVC? 2. Write use of FilterConfiguration.cs file. 3. Define: 1) Model 2) View 3) Controller

More information

5 Years Integrated M.Sc. (IT) 6th Semester Web Development using ASP.NET MVC Practical List 2016

5 Years Integrated M.Sc. (IT) 6th Semester Web Development using ASP.NET MVC Practical List 2016 Practical No: 1 Enrollment No: Name: Practical Problem (a) Create MVC 4 application which takes value from browser URL. Application should display following output based on input no : Ex. No = 1234 o/p

More information

Cloud Phone Systems. Andrew Moore. Making Everything Easier! Nextiva Special Edition. Learn:

Cloud Phone Systems. Andrew Moore. Making Everything Easier! Nextiva Special Edition. Learn: Making Everything Easier! Nextiva Special Edition Cloud Phone Systems Learn: What cloud phone systems are and how they can benefit your company About the many advantages a cloud phone system offers Features

More information

Foreword... xxv. Index...489

Foreword... xxv. Index...489 Professional ASP.NET MVC 2 Foreword............................................................... xxv Introduction...xxvii Chapter 1 NerdDinner..................................................... 1 Chapter

More information

Course Outline. ASP.NET MVC 5 Development Training Course ASPNETMVC5: 5 days Instructor Led. About this Course

Course Outline. ASP.NET MVC 5 Development Training Course ASPNETMVC5: 5 days Instructor Led. About this Course ASP.NET MVC 5 Development Training Course ASPNETMVC5: 5 days Instructor Led About this Course ASP.NET MVC 5 is Microsoft's last MVC release based on both the.net Framework or.net Core 1.0 for building

More information

Join the p2p.wrox.com. Wrox Programmer to Programmer. Professional ASP.NET 4. in C# and VB. Bill Evjen, Scott Hanselman, Devin Rader

Join the p2p.wrox.com. Wrox Programmer to Programmer. Professional ASP.NET 4. in C# and VB. Bill Evjen, Scott Hanselman, Devin Rader Join the discussion @ p2p.wrox.com Wrox Programmer to Programmer Professional ASP.NET 4 in C# and VB Bill Evjen, Scott Hanselman, Devin Rader Programmer to Programmer Get more out of wrox.com Interact

More information

MCITP Windows Server 2008 Server Administrator Study Guide

MCITP Windows Server 2008 Server Administrator Study Guide MCITP Windows Server 2008 Server Administrator Study Guide Darril Gibson MCITP Windows Server 2008 Server Administrator Study Guide MCITP Windows Server 2008 Server Administrator Study Guide Darril Gibson

More information

CHAPTER 1: GETTING STARTED WITH ASP.NET 4 1

CHAPTER 1: GETTING STARTED WITH ASP.NET 4 1 FOREWORD INTRODUCTION xxv xxvii CHAPTER 1: GETTING STARTED WITH ASP.NET 4 1 Microsoft Visual Web Developer 2 Getting Visual Web Developer 3 Installing Visual Web Developer Express 3 Creating Your First

More information

Agile Database Techniques Effective Strategies for the Agile Software Developer. Scott W. Ambler

Agile Database Techniques Effective Strategies for the Agile Software Developer. Scott W. Ambler Agile Database Techniques Effective Strategies for the Agile Software Developer Scott W. Ambler Agile Database Techniques Effective Strategies for the Agile Software Developer Agile Database Techniques

More information

Ruby on Rails. Bible

Ruby on Rails. Bible Ruby on Rails Bible Ruby on Rails Bible Timothy Fisher Ruby on Rails Bible Published by Wiley Publishing, Inc. 10475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com Copyright 2008 by Wiley Publishing,

More information

Beginning Visual Basic 2015

Beginning Visual Basic 2015 Beginning Visual Basic 2015 Introduction................................................... xxvii Chapter 1 Welcome to Visual Basic 2015................................ 1 Chapter 2 The Microsoft.NET Framework..............................

More information

Implementing Security and Tokens: Current Standards, Tools, and Practices

Implementing  Security and Tokens: Current Standards, Tools, and Practices Implementing Email Security and Tokens: Current Standards, Tools, and Practices Sean Turner Russ Housley Wiley Publishing, Inc. Implementing Email Security and Tokens: Current Standards, Tools, and Practices

More information

Professional Visual Studio 2013

Professional Visual Studio 2013 Professional Visual Studio 2013 Introduction.... xliii Part I Integrated Development Environment Chapter 1 A Quick Tour....3 Chapter 2 The Solution Explorer, Toolbox, and Properties.... 15 Chapter 3 Options

More information

iwork DUMmIES 2ND EDITION FOR

iwork DUMmIES 2ND EDITION FOR iwork FOR DUMmIES 2ND EDITION iwork FOR DUMmIES 2ND EDITION by Jesse Feiler iwork For Dummies, 2nd Edition Published by John Wiley & Sons, Inc. 111 River Street Hoboken, NJ 07030-5774 www.wiley.com Copyright

More information

Securing SCADA Systems. Ronald L. Krutz

Securing SCADA Systems. Ronald L. Krutz Securing SCADA Systems Ronald L. Krutz Securing SCADA Systems Securing SCADA Systems Ronald L. Krutz Securing SCADA Systems Published by Wiley Publishing, Inc. 10475 Crosspoint Boulevard Indianapolis,

More information

XSLT 2.0 and XPath 2.0

XSLT 2.0 and XPath 2.0 Wrox Programmer to Programmer TM Michael Kay Michael Kay has been working in the XML field since 1997. He became a member of the XSL Working Group soon after the publication of XSLT 1.0 and took over as

More information

Oracle PL/SQL. DUMmIES. by Michael Rosenblum and Dr. Paul Dorsey FOR

Oracle PL/SQL. DUMmIES. by Michael Rosenblum and Dr. Paul Dorsey FOR Oracle PL/SQL FOR DUMmIES by Michael Rosenblum and Dr. Paul Dorsey Oracle PL/SQL For Dummies Published by Wiley Publishing, Inc. 111 River Street Hoboken, NJ 07030-5774 www.wiley.com Copyright 2006 by

More information

Creating Web Pages. Learn to: Bud E. Smith. Making Everything Easier! 9th Edition. Design, build, and post a Web page

Creating Web Pages. Learn to: Bud E. Smith. Making Everything Easier! 9th Edition. Design, build, and post a Web page Making Everything Easier! 9th Edition Creating Web Pages Learn to: Design, build, and post a Web page Build pages using HTML, Web design software, and online tools Optimize photos, video, and audio for

More information

Pro ASP.NET MVC 2 Framework

Pro ASP.NET MVC 2 Framework Pro ASP.NET MVC 2 Framework Second Edition Steven Sanderson Apress TIB/UB Hannover 89 133 297 713 Contents at a Glance Contents About the Author About the Technical Reviewers Acknowledgments Introduction

More information

Flash Lite. Mobile Development. Professional. Build Flash Applications for Mobile Devices. Jermaine G. Anderson. Join the p2p.wrox.

Flash Lite. Mobile Development. Professional. Build Flash Applications for Mobile Devices. Jermaine G. Anderson. Join the p2p.wrox. Join the discussion @ p2p.wrox.com Wrox Programmer to Programmer Professional Flash Lite Mobile Development Build Flash Applications for Mobile Devices Jermaine G. Anderson Programmer to Programmer Get

More information

Essential Angular for ASP.NET Core MVC

Essential Angular for ASP.NET Core MVC Essential Angular for ASP.NET Core MVC Adam Freeman Essential Angular for ASP.NET Core MVC Adam Freeman London, UK ISBN-13 (pbk): 978-1-4842-2915-6 ISBN-13 (electronic): 978-1-4842-2916-3 DOI 10.1007/978-1-4842-2916-3

More information

Windows. 7 Desktop Support and Administration. Real World Skills for MCITP Certification and Beyond. Darril Gibson

Windows. 7 Desktop Support and Administration. Real World Skills for MCITP Certification and Beyond. Darril Gibson Windows 7 Desktop Support and Administration Real World Skills for MCITP Certification and Beyond Darril Gibson Acquisitions Editor: Jeff Kellum Development Editor: Gary Schwartz Technical Editors: Troy

More information

Index. Bower, 133, 352 bower.json file, 376 Bundling files, 157

Index. Bower, 133, 352 bower.json file, 376 Bundling files, 157 Index A Action results. See Controllers Actions. See Controllers Application model, 986 action constraints, 1000 Areas. See Routing Arrow functions. See Lambda expressions ASP.NET Core MVC (see Model View

More information

Java COURSE CURRICULUM C/C++ JAVA (CORE/ADVANCE/SPRING/STRUTS/HIBERNATE)

Java COURSE CURRICULUM C/C++ JAVA (CORE/ADVANCE/SPRING/STRUTS/HIBERNATE) C/C++ JAVA (CORE/ADVANCE/SPRING/STRUTS/HIBERNATE) MICROSOFT -.NET SHAREPOINT DEVELOPMENT / ADMIN PHP / PHP++ / PHP FRAMEWORK / PYTHON DIGITAL MARKETING / WEB DESIGN / GRAPHIC DESIGN SOFTWARE QUALITY TESTING

More information

MCTS. Microsoft Windows 7 Configuration STUDY GUIDE. William Panek. Covers All Objectives for Exam Exam

MCTS. Microsoft Windows 7 Configuration STUDY GUIDE. William Panek. Covers All Objectives for Exam Exam Covers All Objectives for Exam 70-680 Includes Real-World Scenarios, Hands-On Exercises, and Leading-Edge Exam Prep Software Featuring: Custom Test Engine Hundreds of Sample Questions Electronic Flashcards

More information

PHP & MySQL. Learn to: Janet Valade. Making Everything Easier! 4th Edition. Create well-formed PHP code that s compliant with PHP 4, 5, and 6

PHP & MySQL. Learn to: Janet Valade. Making Everything Easier! 4th Edition. Create well-formed PHP code that s compliant with PHP 4, 5, and 6 Making Everything Easier! 4th Edition PHP & MySQL Learn to: Create well-formed PHP code that s compliant with PHP 4, 5, and 6 Easily install and set up PHP and MySQL using XAMPP Choose a Web host and secure

More information

Real-Time Optimization by Extremum-Seeking Control

Real-Time Optimization by Extremum-Seeking Control Real-Time Optimization by Extremum-Seeking Control Real-Time Optimization by Extremum-Seeking Control KARTIK B. ARIYUR MIROSLAV KRSTIĆ A JOHN WILEY & SONS, INC., PUBLICATION Copyright 2003 by John Wiley

More information

Building Effective ASP.NET MVC 5.x Web Applications using Visual Studio 2013

Building Effective ASP.NET MVC 5.x Web Applications using Visual Studio 2013 coursemonster.com/au Building Effective ASP.NET MVC 5.x Web Applications using Visual Studio 2013 Overview The course takes existing.net developers and provides them with the necessary skills to develop

More information

ASP.NET 3.5 SP1. In C# and VB. Professional. Covers. Service Pack 1. Bill Evjen, Scott Hanselman, Devin Rader

ASP.NET 3.5 SP1. In C# and VB. Professional. Covers. Service Pack 1. Bill Evjen, Scott Hanselman, Devin Rader Wrox Programmer to Programmer TM Professional ASP.NET 3.5 SP1 In C# and VB Covers Service Pack 1 Bill Evjen, Scott Hanselman, Devin Rader CD-ROM includes the full book in PDF format Programmer to Programmer

More information

COSO Enterprise Risk Management

COSO Enterprise Risk Management COSO Enterprise Risk Management COSO Enterprise Risk Management Establishing Effective Governance, Risk, and Compliance Processes Second Edition ROBERT R. MOELLER John Wiley & Sons, Inc. Copyright # 2007,

More information

Microsoft Virtualization SECRETS

Microsoft Virtualization SECRETS Microsoft Virtualization SECRETS Microsoft Virtualization SECRETS DO WHAT YOU NEVER THOUGHT POSSIBLE WITH MICROSOFT VIRTUALIZATION John Savill Executive Editor: Carol Long Project Editor: Katherine Burt

More information

Microsoft SQL Server 2008 Integration Services

Microsoft SQL Server 2008 Integration Services Microsoft SQL Server 2008 Integration Services Problem Design Solution Erik Veerman Jessica M. Moss Brian Knight Jay Hackney Wiley Publishing, Inc. Microsoft SQL Server 2008 Integration Services Problem

More information

MacBook Air PORTABLE GENIUS

MacBook Air PORTABLE GENIUS MacBook Air PORTABLE GENIUS MacBook Air PORTABLE GENIUS MacBook Air PORTABLE GENIUS by Paul McFedries MacBook Air Portable Genius Published by Wiley Publishing, Inc. 10475 Crosspoint Blvd. Indianapolis,

More information

Google Voice. Learn to: Bud E. Smith Chris Dannen. Making Everything Easier! Set up and use Google Voice

Google Voice. Learn to: Bud E. Smith Chris Dannen. Making Everything Easier! Set up and use Google Voice Making Everything Easier! Google Voice Learn to: Set up and use Google Voice Integrate Google Voice with other Google services such as Gmail and Google Chat Combine Google Voice with your existing phone

More information

CHAPTER 1: WHAT S NEW IN SHAREPOINT

CHAPTER 1: WHAT S NEW IN SHAREPOINT INTRODUCTION xxix CHAPTER 1: WHAT S NEW IN SHAREPOINT 2013 1 Installation Changes 2 System Requirements 2 The Installation Process 2 Upgrading from SharePoint 2010 3 Patching 3 Central Administration 4

More information

WINDOWS 10. by Paul McFedries

WINDOWS 10. by Paul McFedries WINDOWS 10 by Paul McFedries WINDOWS 10 SIMPLIFIED Published by John Wiley & Sons, Inc. 10475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com Published simultaneously in Canada Copyright 2015

More information

SQL Server Administration. Beginning Microsoft. Chris Leiter, Dan Wood, Michael Cierkowski, Albert Boettger

SQL Server Administration. Beginning Microsoft. Chris Leiter, Dan Wood, Michael Cierkowski, Albert Boettger Beginning Microsoft SQL Server 2008 Administration Chris Leiter, Dan Wood, Michael Cierkowski, Albert Boettger Updates, source code, and Wrox technical support at www.wrox.com Programmer to Programmer

More information

BEGINNING CSS PART I THE BASICS PART II PROPERTIES PART III ADVANCED CSS AND ALTERNATIVE MEDIA

BEGINNING CSS PART I THE BASICS PART II PROPERTIES PART III ADVANCED CSS AND ALTERNATIVE MEDIA BEGINNING CSS INTRODUCTION............................................................ xxiii PART I THE BASICS CHAPTER 1 Introducing Cascading Style Sheets.............................. 3 CHAPTER 2 The

More information

Microsoft Office Simply the Easiest Way to Learn. Kate Shoup

Microsoft Office Simply the Easiest Way to Learn. Kate Shoup Microsoft Office 200 Simply the Easiest Way to Learn Kate Shoup OFFICE 200 by Kate Shoup OFFICE 200 SIMPLIFIED Published by Wiley Publishing, Inc. 0475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com

More information

ASP.NET MVC 1.0. Website Programming. Nick Berardi, Al Katawazi, Marco Bellinaso. Wrox Programmer to Programmer TM

ASP.NET MVC 1.0. Website Programming. Nick Berardi, Al Katawazi, Marco Bellinaso. Wrox Programmer to Programmer TM Wrox Programmer to Programmer TM ASP.NET MVC 1.0 Website Programming Nick Berardi, Al Katawazi, Marco Bellinaso Updates, source code, and Wrox technical support at www.wrox.com Programmer to Programmer

More information

IN PRACTICE. Daniele Bochicchio Stefano Mostarda Marco De Sanctis. Includes 106 practical techniques MANNING

IN PRACTICE. Daniele Bochicchio Stefano Mostarda Marco De Sanctis. Includes 106 practical techniques MANNING IN PRACTICE Daniele Bochicchio Stefano Mostarda Marco De Sanctis Includes 106 practical techniques MANNING contents preface xv acknowledgments xvii about this book xix about the authors xxiii about the

More information

Richard Wentk. Cocoa. Developer Reference.

Richard Wentk. Cocoa. Developer Reference. Richard Wentk Cocoa Developer Reference www.wileydevreference.com Cocoa Richard Wentk Cocoa Published by Wiley Publishing, Inc. 10475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com Copyright

More information

Windows 10 Anniversary Update. Paul McFedries

Windows 10 Anniversary Update. Paul McFedries Windows 10 Anniversary Update Paul McFedries Teach Yourself VISUALLY Windows 10 Anniversary Update Published by John Wiley & Sons, Inc. 10475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com Published

More information

FileMaker. Pro 10. The book you need to succeed! Companion Web Site. Ray Cologon. Go from basics to full-scale development

FileMaker. Pro 10. The book you need to succeed! Companion Web Site. Ray Cologon. Go from basics to full-scale development Companion Web Site Example FileMaker Pro 10 application Demos, tips, and additional resources Ray Cologon FileMaker Pro 10 Go from basics to full-scale development Write your own FileMaker applications

More information

20486-Developing ASP.NET MVC 4 Web Applications

20486-Developing ASP.NET MVC 4 Web Applications Course Outline 20486-Developing ASP.NET MVC 4 Web Applications Duration: 5 days (30 hours) Target Audience: This course is intended for professional web developers who use Microsoft Visual Studio in an

More information

Evaluation Guide for ASP.NET Web CMS and Experience Platforms

Evaluation Guide for ASP.NET Web CMS and Experience Platforms Evaluation Guide for ASP.NET Web CMS and Experience Platforms CONTENTS Introduction....................... 1 4 Key Differences...2 Architecture:...2 Development Model...3 Content:...4 Database:...4 Bonus:

More information

Practical Database Programming with Visual Basic.NET

Practical Database Programming with Visual Basic.NET Practical Database Programming with Visual Basic.NET IEEE Press 445 Hoes Lane Piscataway, NJ 08854 IEEE Press Editorial Board Lajos Hanzo, Editor in Chief R. Abari M. El-Hawary S. Nahavandi J. Anderson

More information

Professional. Learning and Applying Patterns. Foreword... xix

Professional. Learning and Applying Patterns. Foreword... xix Professional ASP.NET Design Patterns Foreword................................................................ xix Introduction...xxi Part I Introducing Patterns and Principles Chapter 1 The Pattern for

More information

PROFESSIONAL SCALA. INTRODUCTION... xv

PROFESSIONAL SCALA. INTRODUCTION... xv PROFESSIONAL SCALA INTRODUCTION.................................................... xv CHAPTER 1 Language Features....................................... 1 CHAPTER 2 Functional Programming.................................

More information

Beginning ASP.NET MVC 4. José Rolando Guay Paz

Beginning ASP.NET MVC 4. José Rolando Guay Paz Beginning ASP.NET MVC 4 José Rolando Guay Paz Beginning ASP.NET MVC 4 Copyright 2013 by José Rolando Guay Paz This work is subject to copyright. All rights are reserved by the Publisher, whether the whole

More information

LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS DINESH C. VERMA IBM T. J. Watson Research Center A JOHN WILEY & SONS, INC., PUBLICATION

LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS DINESH C. VERMA IBM T. J. Watson Research Center A JOHN WILEY & SONS, INC., PUBLICATION LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS DINESH C. VERMA IBM T. J. Watson Research Center A JOHN WILEY & SONS, INC., PUBLICATION LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS LEGITIMATE APPLICATIONS

More information

Getting MEAN. with Mongo, Express, Angular, and Node SIMON HOLMES MANNING SHELTER ISLAND

Getting MEAN. with Mongo, Express, Angular, and Node SIMON HOLMES MANNING SHELTER ISLAND Getting MEAN with Mongo, Express, Angular, and Node SIMON HOLMES MANNING SHELTER ISLAND For online information and ordering of this and other Manning books, please visit www.manning.com. The publisher

More information

Ubuntu Server Succinctly

Ubuntu Server Succinctly 1 Ubuntu Server Succinctly By José Roberto Olivas Mendoza Foreword by Daniel Jebaraj 2 Copyright 2016 by Syncfusion, Inc. 2501 Aerial Center Parkway Suite 200 Morrisville, NC 27560 USA All rights reserved.

More information

ASP.NET MVC Training

ASP.NET MVC Training TRELLISSOFT ASP.NET MVC Training About This Course: Audience(s): Developers Technology: Visual Studio Duration: 6 days (48 Hours) Language(s): English Overview In this course, students will learn to develop

More information

HTML5 Programming with JavaScript. by John Paul Mueller

HTML5 Programming with JavaScript. by John Paul Mueller HTML5 Programming with JavaScript by John Paul Mueller HTML5 Programming with JavaScript For Dummies Published by John Wiley & Sons, Inc. 111 River Street Hoboken, NJ 07030-5774 www.wiley.com Copyright

More information

Wrox Programmer to Programmer TM. Professional. Design Patterns. Aaron Saray PHP. Updates, source code, and Wrox technical support at

Wrox Programmer to Programmer TM. Professional. Design Patterns. Aaron Saray PHP. Updates, source code, and Wrox technical support at Wrox Programmer to Programmer TM Professional PHP Design Patterns Aaron Saray Updates, source code, and Wrox technical support at www.wrox.com Professional PHP Design Patterns Introduction... xxi Part

More information

Professional Windows PowerShell Programming

Professional Windows PowerShell Programming Professional Windows PowerShell Programming Snap-ins, Cmdlets, Hosts, and Providers Arul Kumaravel Jon White Michael Naixin Li Scott Happell Guohui Xie Krishna C. Vutukuri Wiley Publishing, Inc. Professional

More information

ASP.NET MVC 1.0. Beginning. Simone Chiaretta, Keyvan Nayyeri. Wrox Programmer to Programmer TM

ASP.NET MVC 1.0. Beginning. Simone Chiaretta, Keyvan Nayyeri. Wrox Programmer to Programmer TM Wrox Programmer to Programmer TM Beginning ASP.NET MVC 1.0 Simone Chiaretta, Keyvan Nayyeri Updates, source code, and Wrox technical support at www.wrox.com Programmer to Programmer Get more out of WROX.com

More information

Introducing Models. Data model: represent classes that iteract with a database. Data models are set of

Introducing Models. Data model: represent classes that iteract with a database. Data models are set of Models 1 Objectives Define and describe models Explain how to create a model Describe how to pass model data from controllers to view Explain how to create strongly typed models Explain the role of the

More information

Jon Galloway Technical Evangelist Christopher Harrison Content Developer

Jon Galloway Technical Evangelist Christopher Harrison Content Developer Jon Galloway Technical Evangelist Christopher Harrison Content Developer Meet Jon Galloway @jongalloway Azure Technical Evangelist Focused on ASP.NET MVC http://weblogs.asp.net/jongalloway Web development

More information

Microsoft. Access by Paul McFedries

Microsoft. Access by Paul McFedries Microsoft Access 2013 by Paul McFedries Teach Yourself VISUALLY Access 2013 Published by John Wiley & Sons, Inc. 10475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com Published simultaneously

More information

ASP.NET Core Recipes

ASP.NET Core Recipes ASP.NET Core Recipes A Problem-Solution Approach Second Edition John Ciliberti ASP.NET Core Recipes: A Problem-Solution Approach John Ciliberti Sparta, New Jersey, USA ISBN-13 (pbk): 978-1-4842-0428-3

More information

Full Stack Web Developer Nanodegree Syllabus

Full Stack Web Developer Nanodegree Syllabus Full Stack Web Developer Nanodegree Syllabus Build Complex Web Applications Before You Start Thank you for your interest in the Full Stack Web Developer Nanodegree! In order to succeed in this program,

More information

MacBook Pro. PORTABLE GENIUS 5th EDITION

MacBook Pro. PORTABLE GENIUS 5th EDITION MacBook Pro PORTABLE GENIUS 5th EDITION MacBook Pro PORTABLE GENIUS 5th EDITION by Galen Gruman MacBook Pro Portable Genius, 5th Edition Published by John Wiley & Sons, Inc. 10475 Crosspoint Blvd. Indianapolis,

More information

LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS

LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS DINESH C. VERMA IBM T. J. Watson Research Center A JOHN WILEY & SONS, INC., PUBLICATION LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS LEGITIMATE APPLICATIONS

More information

J2EE TM Best Practices Java TM Design Patterns, Automation, and Performance

J2EE TM Best Practices Java TM Design Patterns, Automation, and Performance J2EE TM Best Practices Java TM Design Patterns, Automation, and Performance Darren Broemmer Wiley Publishing, Inc. Dear Valued Customer, The WILEY advantage We realize you re a busy professional with

More information

Developing ASP.NET MVC Web Applications (486)

Developing ASP.NET MVC Web Applications (486) Developing ASP.NET MVC Web Applications (486) Design the application architecture Plan the application layers Plan data access; plan for separation of concerns, appropriate use of models, views, controllers,

More information

COURSE 20486B: DEVELOPING ASP.NET MVC 4 WEB APPLICATIONS

COURSE 20486B: DEVELOPING ASP.NET MVC 4 WEB APPLICATIONS ABOUT THIS COURSE In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5 tools and technologies. The focus will be on coding activities that enhance the

More information

Limit of Liability/Disclaimer of Warranty:

Limit of Liability/Disclaimer of Warranty: Published by We Got Served Ltd. Copyright 2014 by Cameron Bishop. The right of Cameron Bishop to be identified as author of the Work has been asserted by him in accordance with the Copyright, Designs and

More information

20486: Developing ASP.NET MVC 4 Web Applications (5 Days)

20486: Developing ASP.NET MVC 4 Web Applications (5 Days) www.peaklearningllc.com 20486: Developing ASP.NET MVC 4 Web Applications (5 Days) About this Course In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework

More information

Office 2016 For Seniors. by Faithe Wempen

Office 2016 For Seniors. by Faithe Wempen Office 2016 For Seniors by Faithe Wempen Office 2016 For Seniors For Dummies Published by: John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030-5774, www.wiley.com Copyright 2016 by John Wiley

More information

OS X El CapitanTM. Paul McFedries

OS X El CapitanTM. Paul McFedries OS X El CapitanTM Paul McFedries Teach Yourself VISUALLY OS X El Capitan Published by John Wiley & Sons, Inc. 10475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com Published simultaneously in

More information

Developing ASP.NET MVC 4 Web Applications

Developing ASP.NET MVC 4 Web Applications Developing ASP.NET MVC 4 Web Applications Course 20486B; 5 days, Instructor-led Course Description In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5

More information

Microprocessor Theory

Microprocessor Theory Microprocessor Theory and Applications with 68000/68020 and Pentium M. RAFIQUZZAMAN, Ph.D. Professor California State Polytechnic University Pomona, California and President Rafi Systems, Inc. WILEY A

More information

OpenSolaris. The book you need to succeed! Nicholas A. Solter, Gerald Jelinek, and David Miner. Explore the OpenSolaris operating environment

OpenSolaris. The book you need to succeed! Nicholas A. Solter, Gerald Jelinek, and David Miner. Explore the OpenSolaris operating environment Nicholas A. Solter, Gerald Jelinek, and David Miner OpenSolaris Explore the OpenSolaris operating environment Master networking and systems administration Deploy web services using open source applications

More information

Contents in Detail. Foreword by Xavier Noria

Contents in Detail. Foreword by Xavier Noria Contents in Detail Foreword by Xavier Noria Acknowledgments xv xvii Introduction xix Who This Book Is For................................................ xx Overview...xx Installation.... xxi Ruby, Rails,

More information

Microsoft Computer Vision APIs Distilled

Microsoft Computer Vision APIs Distilled Microsoft Computer Vision APIs Distilled Getting Started with Cognitive Services Alessandro Del Sole Microsoft Computer Vision APIs Distilled Alessandro Del Sole Cremona, Italy ISBN-13 (pbk): 978-1-4842-3341-2

More information

10264A CS: Developing Web Applications with Microsoft Visual Studio 2010

10264A CS: Developing Web Applications with Microsoft Visual Studio 2010 10264A CS: Developing Web Applications with Microsoft Visual Studio 2010 Course Number: 10264A Course Length: 5 Days Course Overview In this course, students will learn to develop advanced ASP.NET MVC

More information

Introduction. Introduction. Copyright by LearnNow, LLC All rights reserved. Reproduction is strictly prohibited.

Introduction. Introduction. Copyright by LearnNow, LLC All rights reserved. Reproduction is strictly prohibited. Introduction MVC 4.0 Intro-1 Prerequisites This course assumes that you are familiar and experienced with Microsoft s.net Framework and ASP.NET development tools. You should be familiar with web development

More information

Course 20486B: Developing ASP.NET MVC 4 Web Applications

Course 20486B: Developing ASP.NET MVC 4 Web Applications Course 20486B: Developing ASP.NET MVC 4 Web Applications Overview In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5 tools and technologies. The focus

More information

Developing ASP.NET MVC 4 Web Applications

Developing ASP.NET MVC 4 Web Applications Developing ASP.NET MVC 4 Web Applications Duration: 5 Days Course Code: 20486B About this course In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5

More information

Developing ASP.NET MVC 5 Web Applications

Developing ASP.NET MVC 5 Web Applications 20486C - Version: 1 23 February 2018 Developing ASP.NET MVC 5 Web Developing ASP.NET MVC 5 Web 20486C - Version: 1 5 days Course Description: In this course, students will learn to develop advanced ASP.NET

More information

Pro Angular 6. Third Edition. Adam Freeman

Pro Angular 6. Third Edition. Adam Freeman Pro Angular 6 Third Edition Adam Freeman Pro Angular 6 Adam Freeman London, UK ISBN-13 (pbk): 978-1-4842-3648-2 ISBN-13 (electronic): 978-1-4842-3649-9 https://doi.org/10.1007/978-1-4842-3649-9 Library

More information

ASP.NET 3.5. In C# and VB. Beginning. Wrox Programmer to Programmer TM. Imar Spaanjaars

ASP.NET 3.5. In C# and VB. Beginning. Wrox Programmer to Programmer TM. Imar Spaanjaars Wrox Programmer to Programmer TM Beginning ASP.NET 3.5 In C# and VB Imar Spaanjaars Updates, source code, and Wrox technical support at www.wrox.com Beginning ASP.NET 3.5 Chapter 1: Getting Started with

More information

TASK SCHEDULING FOR PARALLEL SYSTEMS

TASK SCHEDULING FOR PARALLEL SYSTEMS TASK SCHEDULING FOR PARALLEL SYSTEMS Oliver Sinnen Department of Electrical and Computer Engineering The University of Aukland New Zealand TASK SCHEDULING FOR PARALLEL SYSTEMS TASK SCHEDULING FOR PARALLEL

More information