چه کسانی این کتاب را می‌خوانند

دانشجوعلاقه‌مند یادگیری
کتابخوان حرفه‌ایلذت مطالعه
نویسندهالهام‌گیری

Pro ASPNET MVC Framework Experts Voice in Net

Steven Sanderson

قیمت نهایی

۴۴٬۰۰۰ تومان۴۹٬۰۰۰ تومان۱۰٪ تخفیف
  • تخفیف زمان‌دار−۵٬۰۰۰ تومان

۵٬۰۰۰ تومان صرفه‌جویی نسبت به قیمت اصلی

نسخه اصلی و اورجینال

بلافاصله پس از خرید، فایل کتاب روی دستگاه شما آمادهٔ دانلود است.

تحویل فوری
پرداخت امن
ضمانت فایل
پشتیبانی

مشخصات کتاب

نویسنده
Steven Sanderson
سال انتشار
۲۰۰۹
فرمت
PDF
زبان
انگلیسی
تعداد صفحات
۲۰ صفحه
حجم فایل
۶٫۶ مگابایت

دربارهٔ کتاب

Steven Sanderson has seen the ASP.NET MVC framework mature from the start, so his experience, combined with comprehensive coverage of all the new features, including those in the official MVC development toolkit, offers the clearest understanding of how this exciting new framework could improve your coding efficiency—and you’ll gain invaluable up–to–date awareness of security, deployment, and interoperability challenges. The ASP.NET MVC Framework is the latest evolution of Microsoft’s ASP.NET web platform. It introduces a radically new high–productivity programming model that promotes cleaner code architecture, test–driven development, and powerful extensibility, combined with all the benefits of ASP.NET 3.5. An integral benefit of this book is that the core Model–View–Controller architectural concepts are not simply explained or discussed in isolation, but demonstrated in action. You’ll work through an extended tutorial to create a working e–commerce web application that combines ASP.NET MVC with the latest C# 3.0 language features and unit–testing best practices. By gaining this invaluable, practical experience, you can discover MVCs strengths and weaknesses for yourself—and put your best learned theory into practice. What you’ll learn - Gain a solid architectural background to ASP.NET MVC, including Model–View–Controller and REST concepts. - Explore the ASP.NET MVC framework with detailed coverage of all aspects of the framework and the official MVC development toolkit. - See how it works with test–driven development in action. - Capitalize on your existing knowledge quickly and easily through translation and comparison of features in classic ASP.NET to those in ASP.NET MVC. - Learn about the latest security and deployment issues, including IIS 7.0. Who is this book for? This book is for web developers with a basic knowledge of ASP.NET and C# who want, or need, to start using the new ASP.NET MVC framework. About the Apress Pro Series The Apress Pro series books are practical, professional tutorials to keep you on and moving up the professional ladder. You have gotten the job, now you need to hone your skills in these tough competitive times. The Apress Pro series expands your skills and expertise in exactly the areas you need. Master the content of a Pro book, and you will always be able to get the job done in a professional development project. Written by experts in their field, Pro series books from Apress give you the hard–won solutions to problems you will face in your professional programming career. Contents at a Glance......Page 3 Contents......Page 4 About the Author......Page 15 About the Technical Reviewer......Page 16 Acknowledgments......Page 17 Who This Book Is For......Page 18 Customer Support......Page 19 Contacting the Author......Page 20 Unknown......Page 0 SP.NET MVC is a radical shift for web developers using the Microsoft platform. This new framework emphasizes clean architecture,......Page 21 A Brief History of Web Development......Page 22 What’s Wrong with Traditional ASP.NET?......Page 23 Web Development Today......Page 24 Ruby on Rails......Page 25 Model-View-Controller Architecture......Page 26 Tight Control over HTML......Page 27 Built on the Best Parts of the ASP.NET Platform......Page 28 Who Should Use ASP.NET MVC?......Page 29 Comparisons with Ruby on Rails......Page 30 Comparisons with MonoRail......Page 31 Summary......Page 32 Preparing Your Workstation......Page 33 Creating a New ASP.NET MVC Project......Page 34 Removing Unnecessary Files......Page 36 How Does It Work?......Page 37 Creating and Rendering a View......Page 38 Adding Dynamic Output......Page 40 Linking Between Actions......Page 41 Adding a Model Class......Page 43 Building a Form......Page 44 Dude, Where’s My Data?......Page 45 Introducing Model Binding......Page 46 Introducing Strongly Typed Views......Page 47 Adding Validation......Page 49 Model Binding Tells Input Controls to Redisplay User-Entered Values......Page 50 Finishing Off......Page 51 Summary......Page 53 Understanding Model-View-Controller Architecture......Page 54 The Smart UI (Anti-Pattern)......Page 55 Model-View Architecture......Page 56 Three-Tier Architecture......Page 57 Model-View-Controller Architecture......Page 58 History and Benefits......Page 59 Model-View-Presenter......Page 60 An Example Domain Model......Page 61 Ubiquitous Language......Page 62 Aggregates and Simplification......Page 63 Keeping Data Access Code in Repositories......Page 65 Using LINQ to SQL......Page 66 WHAT’S A DATACONTEXT?......Page 67 Implementing the Auctions Domain Model......Page 68 Implementing the Auction Repositories......Page 71 Building Loosely Coupled Components......Page 73 Using Inversion of Control......Page 74 An MVC-Specific Example......Page 76 Meet Castle Windsor......Page 77 Getting Started with Automated Testing......Page 78 Unit Tests and Integration Tests......Page 80 The Red-Green Development Style......Page 81 So, Was It Worth It?......Page 84 Extension Methods......Page 85 Lambda Methods......Page 87 Automatic Properties......Page 88 Object and Collection Initializers......Page 89 Anonymous Types......Page 90 Putting It All Together......Page 91 Deferred Execution......Page 92 Using LINQ to Objects......Page 93 Lambda Expressions......Page 94 IQueryable and LINQ to SQL......Page 95 Summary......Page 97 SportsStore: A Real Application......Page 98 Getting Started......Page 99 Creating Your Solutions and Projects......Page 100 Creating an Abstract Repository......Page 102 Making a Fake Repository......Page 103 Removing Unnecessary Files......Page 104 Adding the First Controller......Page 105 Setting Up the Default Route......Page 106 Adding the First View......Page 107 Defining the Database Schema......Page 109 Setting Up LINQ to SQL......Page 111 Creating a Real Repository......Page 112 Creating a Custom Controller Factory......Page 114 Using Your IoC Container......Page 116 Choosing a Component Lifestyle......Page 118 Creating Automated Tests......Page 119 TESTING: GETTING STARTED......Page 120 Configuring a Custom URL Schema......Page 123 Adding a RouteTable Entry......Page 124 Displaying Page Links......Page 125 TESTING: DESIGNING THE PAGELINKS HELPER......Page 126 Making the HTML Helper Method Visible to All View Pages......Page 128 TESTING: PAGE NUMBERS AND PAGE COUNTS......Page 129 Defining Page Layout in the Master Page......Page 131 Adding CSS Rules......Page 132 Creating a Partial View......Page 134 Summary......Page 136 Adding Navigation Controls......Page 137 TESTING: FILTERING THE PRODUCTS LIST BY CATEGORY......Page 138 TESTING: UPDATING YOUR TESTS......Page 139 Implementing the Category Filter......Page 140 Defining a URL Schema for Categories......Page 141 TESTING: INBOUND ROUTE MAPPING......Page 142 TESTING: OUTBOUND URL GENERATION......Page 144 Building a Category Navigation Menu......Page 147 Creating the Navigation Controller......Page 148 TESTING: GENERATING THE LIST OF CATEGORY LINKS......Page 150 Selecting and Rendering a List of Category Links......Page 151 Highlighting the Current Category......Page 153 TESTING: SELECTING THE CORRECT NAVLINK TO HIGHLIGHT......Page 154 TESTING: UPDATING YOUR TESTS......Page 155 Building the Shopping Cart......Page 156 Defining the Cart Entity......Page 157 TESTING: SHOPPING CART BEHAVIOR......Page 158 Adding “Add to Cart” Buttons......Page 160 Multiple Tags......Page 161 ASP.NET MVC Offers a Tidier Way of Working with Session Storage......Page 162 Creating a Custom Model Binder......Page 163 TESTING: CARTCONTROLLER......Page 164 Implementing AddToCart and RemoveFromCart......Page 165 Displaying the Cart......Page 166 TESTING: CARTCONTROLLER’S INDEX ACTION......Page 167 Removing Items from the Cart......Page 169 Displaying a Cart Summary in the Title Bar......Page 170 Submitting Orders......Page 172 Enhancing the Domain Model......Page 173 TESTING: SHIPPING DETAILS......Page 174 Prompting the Customer for Shipping Details......Page 175 Completing CartController......Page 177 TESTING: ORDER SUBMISSION......Page 178 Adding a Fake Order Submitter......Page 180 Displaying Validation Errors......Page 181 Displaying a “Thanks for Your Order” Screen......Page 182 Implementing the EmailOrderSubmitter......Page 183 Exercise: Credit Card Processing......Page 184 Summary......Page 185 TESTING......Page 186 Creating AdminController: A Place for the CRUD Features......Page 187 TESTING: THE INDEX ACTION......Page 189 Rendering a Grid of Products in the Repository......Page 190 Implementing the List View Template......Page 191 TESTING: THE EDIT ACTION......Page 194 Creating a Product Editor UI......Page 195 TESTING: EDIT SUBMISSIONS......Page 196 Adding Validation......Page 199 Creating New Products......Page 201 TESTING: THE DELETE ACTION......Page 202 Securing the Administration Features......Page 203 Setting Up Forms Authentication......Page 204 Using a Filter to Enforce Authentication......Page 205 Displaying a Login Prompt......Page 206 BUT WHAT ABOUT TESTABILITY?......Page 209 Preparing the Domain Model and Database......Page 210 A Little-Known Fact About HTML Forms......Page 211 Displaying Product Images......Page 212 Summary......Page 214 o far, you’ve learned about why the ASP.NET MVC Framework exists, and have gained understanding of its architecture and underlyi......Page 216 Developing MVC Applications in Visual Studio......Page 217 The Default MVC Project Structure......Page 218 Naming Conventions......Page 221 Debugging MVC Applications and Unit Tests......Page 222 Launching the Visual Studio Debugger......Page 223 Attaching the Debugger to a Test Runner (e.g., NUnit GUI)......Page 224 Using the Debugger......Page 225 Stepping into the .NET Framework Source Code......Page 226 The Request Processing Pipeline......Page 227 Stage 1: IIS......Page 228 Finding and Invoking Controllers......Page 230 What Controllers Normally Do......Page 231 Rendering a View......Page 232 Summary......Page 233 Putting the Programmer Back in Control......Page 234 Setting Up Routes......Page 235 The Main Characters: RouteBase, Route, and RouteCollection......Page 237 How Routing Fits into the Request Processing Pipeline......Page 238 Adding a Route Entry......Page 239 Meet RouteValueDictionary......Page 240 Using Parameters......Page 241 Using Defaults......Page 242 Using Constraints......Page 243 Matching Against Regular Expressions......Page 244 Matching Custom Constraints......Page 245 Accepting a Variable-Length List of Parameters......Page 246 Using the RouteExistingFiles Flag......Page 247 Using IgnoreRoute to Bypass the Routing System......Page 248 Generating Outgoing URLs......Page 249 Passing Extra Parameters......Page 250 Generating Fully Qualified Absolute URLs......Page 251 Generating Links and URLs from Pure Routing Data......Page 252 Performing Redirections to Generated URLs......Page 253 Understanding the Outbound URL-Matching Algorithm......Page 254 THE CURRENT REQUEST’S PARAMETERS MAY BE REUSED......Page 255 Generating Hyperlinks with Html.ActionLink and Lambda Expressions......Page 256 Why You Might Not Want to Use Named Routes......Page 257 Testing Inbound URL Routing......Page 258 Using Test Doubles......Page 259 Using a Mocking Framework (Moq)......Page 260 Testing Outbound URL Generation......Page 262 Implementing a Custom RouteBase Entry......Page 264 Implementing a Custom Route Handler......Page 265 URL Schema Best Practices......Page 266 Make Your URLs Clean and Human-Friendly......Page 267 On Query Strings......Page 268 Use the Correct Type of HTTP Redirection......Page 269 Search Engine Optimization......Page 270 Summary......Page 271 An Overview......Page 272 All Controllers Implement IController......Page 273 The Controller Base Class......Page 274 Getting Data from Context Objects......Page 275 Parameters Objects Are Instantiated Using a Model Binder......Page 277 Invoking Model Binding Manually in an Action Method......Page 278 Understanding the ActionResult Concept......Page 279 Returning HTML by Rendering a View......Page 282 Passing a ViewData Dictionary and a Model Object......Page 283 Performing Redirections......Page 286 Redirecting to a Different Action Method......Page 287 Using TempData to Preserve Data Across a Redirection......Page 288 HOW THE TEMPDATA STORE COMPARES TO THE SESSION STORE......Page 289 Returning Textual Data......Page 290 Generating an RSS Feed......Page 291 Returning JavaScript Commands......Page 292 Returning Files and Binary Data......Page 293 Sending a File Directly from Disk......Page 294 Example: Watermarking an Image (and the Concept of Testability Seams)......Page 296 Introducing the Four Basic Types of Filters......Page 299 Applying Filters to Controllers and Action Methods......Page 301 Creating Action Filters and Result Filters......Page 302 Controlling the Order of Execution......Page 304 Using the Controller Itself As a Filter......Page 305 Creating and Using Authorization Filters......Page 306 How Authorization Filters Interact with Output Caching......Page 307 Creating a Custom Authorization Filter......Page 308 Using HandleErrorAttribute......Page 309 Creating a Custom Exception Filter......Page 311 Bubbling Exceptions Through Action and Result Filters......Page 312 The [OutputCache] Action Filter......Page 313 Other Built-In Filter Types......Page 315 Working with DefaultControllerFactory......Page 316 Prioritizing Namespaces on Individual Route Entries......Page 317 Creating a Custom Controller Factory......Page 318 Customizing How Action Methods Are Selected and Invoked......Page 319 Using [ActionName] to Specify a Custom Action Name......Page 320 Method Selection: Controlling Whether a C# Method Should Agree to Handle a Request......Page 321 How the Whole Method Selection Process Fits Together......Page 323 Handling Unknown Actions......Page 324 Testing Controllers and Actions......Page 325 Testing a Choice of View and ViewData......Page 326 Testing ViewData Values......Page 327 Testing Redirections......Page 328 Mocking Context Objects......Page 329 A Reusable ASP.NET MVC Mocking Helper......Page 331 Summary......Page 333 How Views Fit into ASP.NET MVC......Page 334 The WebForms View Engine......Page 335 Five Ways to Add Dynamic Content to a View Template......Page 336 Using Inline Code......Page 337 Understanding How MVC Views Actually Work......Page 339 Understanding How ASPX Templates Are Compiled......Page 340 Understanding ViewData......Page 342 Rendering ViewData Items Using ViewData.Eval......Page 343 Using ViewData.Eval to Simplify Inline Expressions......Page 344 Using HTML Helper Methods......Page 345 Rendering Input Controls......Page 346 Rendering Links and URLs......Page 348 Rendering Drop-Down Lists and Multiselect Lists......Page 349 Bonus Helper Methods in Microsoft.Web.Mvc.dll......Page 351 Other HTML Helpers......Page 352 Rendering Form Tags......Page 353 Creating Your Own HTML Helper Methods......Page 355 Attaching Your Helper Method to HtmlHelper via an Extension Method......Page 356 Creating a Partial View......Page 357 Passing ViewData to a Partial View......Page 358 Passing an Explicit ViewData.Model Object to a Partial View......Page 359 Passing an Explicit ViewData.Model Object to the Control......Page 362 Using Html.RenderAction to Create Reusable Widgets with Application Logic......Page 364 When It’s Appropriate to Use Html.RenderAction......Page 365 Creating a Widget Based on Html.RenderAction......Page 366 Sharing Page Layouts Using Master Pages......Page 368 Method 1: Have Your Controller Put a Control-Specific Data Item into ViewData......Page 369 Method 3: Use Html.RenderAction......Page 370 Step 1: Implement IViewEngine, or Derive a Class from VirtualPathProviderViewEngine......Page 371 Step 2: Implement IView......Page 372 Step 3: Use It......Page 373 Step 4: Register Your View Engine with the Framework......Page 375 Using the NVelocity View Engine......Page 376 Using the Brail View Engine......Page 378 Using the Spark View Engine......Page 379 Using the NHaml View Engine......Page 380 Summary......Page 381 Model Binding......Page 382 Model-Binding to Action Method Parameters......Page 383 Model-Binding to Custom Types......Page 384 Omitting a Prefix......Page 385 Choosing a Subset of Properties to Bind......Page 386 Invoking Model Binding Directly......Page 387 Dealing with Model-Binding Errors......Page 388 Model-Binding to Arrays, Collections, and Dictionaries......Page 389 Model-Binding Collections of Custom Types......Page 390 Creating a Custom Model Binder......Page 391 Configuring Which Model Binders Are Used......Page 393 Using Model Binding to Receive File Uploads......Page 394 Registering Errors in ModelState......Page 396 View Helpers for Displaying Error Information......Page 399 How the Framework Maintains State in Input Controls......Page 401 Performing Validation During Model Binding......Page 402 Moving Validation Logic into Your Model Layer......Page 403 Implementing Validation on Model Operations......Page 404 Implementing Sophisticated Rules......Page 407 Generating Client-Side Validation from Model Attributes......Page 408 Wizards and Multistep Forms......Page 409 Navigation Through Multiple Steps......Page 410 Collecting and Preserving Data......Page 412 Completing the Wizard......Page 415 Validation......Page 416 VIEWSTATE AND SERIALIZATION......Page 418 Implementing a CAPTCHA......Page 419 Creating an HTML Helper Method......Page 421 Rendering a Dynamic Image......Page 423 Distorting the Text......Page 425 Verifying the Form Submission......Page 426 Confirmation Links and Tamper-Proofing with HMAC Codes......Page 427 An HMAC Utility Class......Page 428 Usage Example......Page 430 Summary......Page 431 Why You Should Use a JavaScript Toolkit......Page 432 ASP.NET MVC’s Ajax Helpers......Page 433 Fetching Page Content Asynchronously Using Ajax.ActionLink......Page 434 Passing Options to Ajax.ActionLink......Page 437 Running JavaScript Functions Before or After Asynchronous Requests......Page 438 Detecting Asynchronous Requests......Page 439 Submitting Forms Asynchronously Using Ajax.BeginForm......Page 440 Invoking JavaScript Commands from an Action Method......Page 441 Reviewing ASP.NET MVC’s Ajax Helpers......Page 443 Referencing jQuery......Page 444 INTELLISENSE SUPPORT FOR JQUERY......Page 445 Basic jQuery Theory......Page 446 A QUICK NOTE ABOUT ELEMENT IDS......Page 447 Event Handling......Page 448 Global Helpers......Page 449 Unobtrusive JavaScript......Page 450 Adding Client-Side Interactivity to an MVC View......Page 451 Improvement 1: Zebra-Striping......Page 452 Improvement 2: Confirm Before Deletion......Page 453 Improvement 3: Hiding and Showing Sections of the Page......Page 454 Ajax-Enabling Links and Forms......Page 455 Hijaxing Links......Page 456 Hijaxing Forms......Page 460 Client/Server Data Transfer with JSON......Page 462 Fetching XML Data Using jQuery......Page 465 Animations and Other Graphical Effects......Page 466 Example: A Sortable List......Page 467 Implementing Client-Side Validation with jQuery......Page 469 Summary......Page 471 All Input Can Be Forged......Page 472 HOW DOES HTTP WORK?......Page 473 Forging HTTP Requests......Page 474 Cross-Site Scripting and HTML Injection......Page 476 Defense......Page 477 ASP.NET’s Request Validation Feature......Page 478 Request Validation: Good or Bad?......Page 479 Filtering HTML Using the HTML Agility Pack......Page 480 Session Hijacking......Page 481 Defense by Setting the HttpOnly Flag on Cookies......Page 482 Cross-Site Request Forgery......Page 483 Defense......Page 484 Preventing CSRF Using the Anti-Forgery Helpers......Page 485 SQL Injection......Page 486 Defense Using Parameterized Queries......Page 487 Don’t Expose Action Methods Accidentally......Page 488 Summary......Page 489 Server Requirements......Page 490 Understanding Web Sites and Virtual Directories......Page 491 How Requests Are Handled by IIS 5, IIS 6, and IIS 7 in Classic Pipeline Mode......Page 493 How Requests Are Handled in IIS 7 Integrated Pipeline Mode......Page 495 Deploying Your Application......Page 496 Deploying the ASP.NET MVC and Routing Assemblies......Page 497 Using Visual Studio 2008’s Publish Feature......Page 498 Making It Work on Windows Server 2003/IIS 6......Page 499 Adding and Configuring a New MVC Web Site in IIS Manager......Page 500 Making Extensionless URLs Work on IIS 6......Page 502 Making It Work on IIS 7......Page 507 Adding and Configuring a New MVC Web Site in IIS 7......Page 508 Supporting Changeable Routing Configurations......Page 510 Using ASP.NET’s Configuration Facilities......Page 511 Configuring Arbitrary Key/Value Pairs......Page 512 Configuring Arbitrary Data Structures......Page 513 Controlling Compilation on the Server......Page 515 Summary......Page 516 ASP.NET Platform Features......Page 517 Windows Authentication......Page 518 Preventing or Limiting Anonymous Access......Page 520 Forms Authentication......Page 521 Setting Up Forms Authentication......Page 522 Handling Login Attempts......Page 524 Using Cookieless Forms Authentication......Page 525 Membership, Roles, and Profiles......Page 526 Setting Up SqlMembershipProvider......Page 528 Managing Members Using the Web Administration Tool......Page 531 Using a Membership Provider with Forms Authentication......Page 532 Creating a Custom Membership Provider......Page 533 Setting Up and Using Roles......Page 534 Using the Built-In SqlRoleProvider......Page 535 Creating a Custom Role Provider......Page 536 Using the Built-In SqlProfileProvider......Page 537 Configuring, Reading, and Writing Profile Data......Page 538 Creating a Custom Profile Provider......Page 539 URL-Based Authorization......Page 541 Reading and Writing Cache Data......Page 542 Using Advanced Cache Features......Page 545 Site Maps......Page 546 Setting Up and Using Site Maps......Page 547 Creating a Custom Navigation Control with the Site Maps API......Page 548 Generating Site Map URLs from Routing Data......Page 550 Using Security Trimming......Page 551 Internationalization......Page 552 Setting Up Internationalization......Page 553 Tips for Working with Resource Files......Page 556 Using Placeholders in Resource Strings......Page 557 HTTP Compression......Page 558 Tracing and Monitoring......Page 560 Monitoring Page Generation Times......Page 561 Monitoring LINQ to SQL Database Queries......Page 562 Summary......Page 566 Using WebForms Technologies in an MVC Application......Page 567 Using WebForms Controls in MVC Views......Page 568 Using WebForms Pages in an MVC Web Application......Page 570 Adding Routing Support for WebForms Pages......Page 571 Passing Parameters (and Model Binding) to WebForms Pages......Page 573 A Note About URL-Based Authorization......Page 574 Using ASP.NET MVC in a WebForms Application......Page 575 Upgrading an ASP.NET WebForms Application to Support MVC......Page 576 Getting Visual Studio to Offer MVC Items......Page 580 Interactions Between WebForms Pages and MVC Controllers......Page 581 Transferring Data Between MVC and WebForms......Page 582 Summary......Page 583 Index......Page 584

Steven Sanderson has seen the ASP.NET MVC framework mature from the start, so his experience, combined with comprehensive coverage of all its features, including those in the official MVC development toolkit, offers the clearest understanding of how this exciting framework could improve your coding efficiency—and you’ll gain invaluable awareness of security, deployment, and interoperability challenges.

The ASP.NET MVC Framework is the evolution of Microsoft’s ASP.NET web platform. It introduced a radical high–productivity programming model that promotes cleaner code architecture, test–driven development, and powerful extensibility, combined with all the benefits of ASP.NET 3.5.

An integral benefit of this book is that the core Model–View–Controller architectural concepts are not simply explained or discussed in isolation, but demonstrated in action. You’ll work through an extended tutorial to create a working e–commerce web application that combines ASP.NET MVC with the latest C# 3.0 language features and unit–testing best practices. By gaining this invaluable, practical experience, you can discover MVCs strengths and weaknesses for yourself—and put your best learned theory into practice.

What you’ll learn

  • Gain a solid architectural background to ASP.NET MVC, including Model–View–Controller and REST concepts.
  • Explore the ASP.NET MVC framework with detailed coverage of all aspects of the framework and the official MVC development toolkit.
  • See how it works with test–driven development in action.
  • Capitalize on your existing knowledge quickly and easily through translation and comparison of features in classic ASP.NET to those in ASP.NET MVC.
  • Learn about security and deployment issues, including IIS 7.0.
Who this book is for

This book is for web developers with a basic knowledge of ASP.NET and C# who want, or need, to start using the ASP.NET MVC framework.

Steven Sanderson has seen the ASP.NET MVC framework mature from the start, so his experience, combined with comprehensive coverage of all its features, including those in the official MVC development toolkit, offers the clearest understanding of how this exciting framework could improve your coding efficiency ́ and you'll gain invaluable awareness of security, deployment, and interoperability challenges. The ASP.NET MVC Framework is the evolution of Microsoft's ASP.NET web platform. It introduced a radical high ́ productivity programming model that promotes cleaner code architecture, test ́ driven development, and powerful extensibility, combined with all the benefits of ASP.NET 3.5. An integral benefit of this book is that the core Model ́ View ́ Controller architectural concepts are not simply explained or discussed in isolation, but demonstrated in action. You'll work through an extended tutorial to create a working e ́ commerce web application that combines ASP.NET MVC with the latest C# 3.0 language features and unit ́ testing best practices. By gaining this invaluable, practical experience, you can discover MVCs strengths and weaknesses for yourself ́ and put your best learned theory into practice

قیمت نهایی

۴۴٬۰۰۰ تومان