Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Beginning ASP .NET 4 in C # 2010
PREMIUM
Số trang
1017
Kích thước
21.1 MB
Định dạng
PDF
Lượt xem
922

Beginning ASP .NET 4 in C # 2010

Nội dung xem thử

Mô tả chi tiết

this print for content only—size & color not accurate spine = 1.90625" 1016 page count MacDonald ASP.NET 4 in C# 2010

THE EXPERT’S VOICE® IN .NET

Beginning

ASP.NET 4

in C# 2010

CYAN

MAGENTA

YELLOW

BLACK

PANTONE 123 C

Matthew MacDonald

Companion

eBook Available

Start your journey with the fundamentals

of building ASP.NET websites

BOOKS FOR PROFESSIONALS BY PROFESSIONALS®

Beginning ASP.NET 4 in C# 2010

Dear Reader,

Welcome to the most up-to-date and comprehensive beginning ASP NET book

you’ll find on any shelf. As you probably already know, ASP.NET is a framework

for developing modern web applications. In the right hands, ASP.NET produces

web applications that are secure, blisteringly fast, and highly scalable. Best of

all, ASP.NET includes a huge set of ready-to-use features like website naviga￾tion, data binding, themes, and user management. ASP.NET allows you to cre￾ate everything from a dynamic personal website to a full-scale e-commerce

storefront.

In this book, I assume that you have only basic knowledge of C#, although

those coming from a more experienced background will find that the basics are

reviewed quickly and efficiently. As you explore ASP.NET, you’ll learn the key

database, security, and performance principles you need to know in order to

design a solid web application. My book will also teach you to use techniques

such as object-oriented programming and code-behind development from the

beginning, rather than fake it with simplified techniques that won’t work well

in real life.

Once you’ve reached the end of the book, you will have mastered the core

techniques of website programming, and you’ll have the knowledge necessary

to begin work as a professional ASP.NET developer.

Welcome aboard!

Matthew MacDonald (Microsoft MVP, MCSD)

Matthew MacDonald,

Author of

Pro ASP.NET 4 in C# 2010

Pro Silverlight 4 in C#

Pro WPF in C# 2010

ASP.NET: The Complete

Reference

US $49.99

Shelve in:

Programming Languages / C#

User level:

Beginning–Intermediate

THE APRESS ROADMAP

Pro

ASP.NET 4 CMS

Pro

ASP.NET MVC 2 Framework

Pro

ASP.NET 4 in C# 2010

Pro

C# 2010 and the

.NET 4 Platform

Beginning

ASP.NET 4 in C# 2010

www.apress.com

SOURCE CODE ONLINE

Companion eBook

See last page for details

on $10 eBook version

ISBN 978-1-4302-2608-6

9 781430 226086

5 49 9 9

Beginning

Download from Wow! eBook <www.wowebook.com>

Beginning ASP.NET 4

in C# 2010

■ ■ ■

Matthew MacDonald

Beginning ASP.NET in C# 2010

Copyright © 2010 by Matthew MacDonald

All rights reserved. No part of this work may be reproduced or transmitted in any form or by any

means, electronic or mechanical, including photocopying, recording, or by any information

storage or retrieval system, without the prior written permission of the copyright the publisher.

ISBN-13 (pbk): 978-1-4302-2608-6

ISBN-13 (electronic): 978-1-4302-2609-3

Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1

Trademarked names, logos, and images may appear in this book. Rather than use a trademark

symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and

images only in an editorial fashion and to the benefit of the trademark owner, with no intention of

infringement of the trademark.

The use in this publication of trade names, trademarks, service marks, and similar terms, even if

they are not identified as such, is not to be taken as an expression of opinion as to whether or not

they are subject to proprietary rights.

President and Publisher: Paul Manning

Lead Editor: Ewan Buckingham

Technical Reviewer: Damien Foggon

Editorial Board: Clay Andres, Steve Anglin, Mark Beckner, Ewan Buckingham, Gary Cornell,

Jonathan Gennick, Jonathan Hassell, Michelle Lowman, Matthew Moodie, Duncan Parkes,

Jeffrey Pepper, Frank Pohlmann, Douglas Pundick, Ben Renow-Clarke, Dominic

Shakeshaft, Matt Wade, Tom Welsh

Coordinating Editor: Anne Collett

Copy Editor: Kim Wimpsett

Compositor: Mary Sudul

Indexer: BIM Indexing & Proofreading Services

Artist: April Milne

Cover Designer: Anna Ishchenko

Distributed to the book trade worldwide by Springer Science+Business Media, LLC., 233 Spring

Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders￾[email protected], or visit www.springeronline.com.

For information on translations, please e-mail [email protected], or visit www.apress.com.

Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional

use. eBook versions and licenses are also available for most titles. For more information, reference

our Special Bulk Sales–eBook Licensing web page at www.apress.com/info/bulksales.

The information in this book is distributed on an “as is” basis, without warranty. Although every

precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall

have any liability to any person or entity with respect to any loss or damage caused or alleged to be

caused directly or indirectly by the information contained in this work.

For my wonderful family,

Faria, Maya, and Brenna

■ CONTENTS

v

Contents

About the Author .................................................................................................. xxv

About the Technical Reviewer............................................................................. xxvi

Acknowledgments .............................................................................................. xxvii

Introduction....................................................................................................... xxviii

Part 1: Introducing .NET ...........................................................................................1

■ Chapter 1: The .NET Framework ..........................................................................3

The Evolution of Web Development .................................................................................3

HTML and HTML Forms ..........................................................................................................................3

Server-Side Programming......................................................................................................................6

Client-Side Programming .......................................................................................................................7

The .NET Framework .......................................................................................................9

C#, VB, and the .NET Languages ..........................................................................................................11

The Common Language Runtime .........................................................................................................13

The .NET Class Library..........................................................................................................................14

Visual Studio.........................................................................................................................................15

The Last Word................................................................................................................16

■ Chapter 2: The C# Language ..............................................................................17

The .NET Languages ......................................................................................................17

C# Language Basics ......................................................................................................18

Case Sensitivity ....................................................................................................................................18

Commenting .........................................................................................................................................18

Statement Termination.........................................................................................................................19

■ CONTENTS

vi

Blocks...................................................................................................................................................20

Variables and Data Types ..............................................................................................20

Assignment and Initializers ..................................................................................................................22

Strings and Escaped Characters ..........................................................................................................24

Arrays ...................................................................................................................................................24

Enumerations .......................................................................................................................................26

Variable Operations .......................................................................................................27

Advanced Math.....................................................................................................................................29

Type Conversions .................................................................................................................................29

Object-Based Manipulation ...........................................................................................31

The String Type ....................................................................................................................................32

The DateTime and TimeSpan Types .....................................................................................................34

The Array Type......................................................................................................................................36

Conditional Logic ...........................................................................................................37

The if Statement ...................................................................................................................................38

The switch Statement...........................................................................................................................39

Loops .............................................................................................................................40

The for Loop..........................................................................................................................................40

The foreach Loop..................................................................................................................................41

The while loop ......................................................................................................................................42

Methods.........................................................................................................................43

Parameters ...........................................................................................................................................44

Method Overloading .............................................................................................................................45

Optional and Named Parameters..........................................................................................................46

Delegates..............................................................................................................................................47

The Last Word................................................................................................................48

■ Chapter 3: Types, Objects, and Namespaces .....................................................49

The Basics About Classes..............................................................................................49

Static Members ....................................................................................................................................50

A Simple Class......................................................................................................................................51

■ CONTENTS

vii

Building a Basic Class ...................................................................................................51

Creating an Object................................................................................................................................53

Adding Properties .................................................................................................................................54

Automatic Properties............................................................................................................................56

Adding a Method ..................................................................................................................................56

Adding a Constructor............................................................................................................................57

Adding an Event....................................................................................................................................59

Testing the Product Class.....................................................................................................................60

Value Types and Reference Types.................................................................................63

Assignment Operations ........................................................................................................................63

Equality Testing ....................................................................................................................................64

Passing Parameters by Reference and by Value ..................................................................................64

Reviewing .NET Types ..........................................................................................................................65

Understanding Namespaces and Assemblies................................................................67

Using Namespaces...............................................................................................................................68

Importing Namespaces.........................................................................................................................69

Assemblies ...........................................................................................................................................70

Advanced Class Programming.......................................................................................71

Inheritance............................................................................................................................................71

Static Members ....................................................................................................................................73

Casting Objects.....................................................................................................................................74

Partial Classes......................................................................................................................................76

Generics................................................................................................................................................77

The Last Word................................................................................................................79

Part 2: Developing ASP.NET Applications...............................................................81

■ Chapter 4: Visual Studio.....................................................................................83

The Promise of Visual Studio.........................................................................................83

Creating Websites..........................................................................................................84

Creating an Empty Web Application .....................................................................................................85

■ CONTENTS

viii

Websites and Web Projects ..................................................................................................................89

The Hidden Solution Files.....................................................................................................................90

The Solution Explorer ...........................................................................................................................91

Adding Web Forms ...............................................................................................................................92

Migrating a Website from a Previous Version of Visual Studio.............................................................93

Designing a Web Page...................................................................................................95

Adding Web Controls ............................................................................................................................96

The Properties Window ........................................................................................................................98

The Anatomy of a Web Form .......................................................................................100

The Web Form Markup .......................................................................................................................100

The Page Directive..............................................................................................................................101

The Doctype........................................................................................................................................102

The Essentials of XHTML ....................................................................................................................104

Writing Code ................................................................................................................110

The Code-Behind Class ......................................................................................................................110

Adding Event Handlers .......................................................................................................................110

Outlining .............................................................................................................................................112

IntelliSense.........................................................................................................................................113

Code Formatting and Coloring............................................................................................................117

Visual Studio Debugging..............................................................................................118

The Visual Studio Web Server ............................................................................................................118

Single-Step Debugging.......................................................................................................................119

Variable Watches................................................................................................................................124

The Last Word..............................................................................................................125

■ Chapter 5: Web Form Fundamentals................................................................127

The Anatomy of an ASP.NET Application .....................................................................127

ASP.NET File Types.............................................................................................................................128

ASP.NET Application Directories.........................................................................................................129

Introducing Server Controls.........................................................................................130

HTML Server Controls.........................................................................................................................131

■ CONTENTS

ix

Converting an HTML Page to an ASP.NET Page..................................................................................131

View State ..........................................................................................................................................134

The HTML Control Classes..................................................................................................................135

Adding the Currency Converter Code .................................................................................................138

Event Handling....................................................................................................................................140

Behind the Scenes with the Currency Converter................................................................................142

Error Handling.....................................................................................................................................144

Improving the Currency Converter...............................................................................144

Adding Multiple Currencies ................................................................................................................145

Storing Information in the List............................................................................................................146

Adding Linked Images ........................................................................................................................147

Setting Styles .....................................................................................................................................150

A Deeper Look at HTML Control Classes......................................................................151

HTML Control Events ..........................................................................................................................151

Advanced Events with the HtmlInputImage Control ...........................................................................152

The HtmlControl Base Class ...............................................................................................................154

The HtmlContainerControl Class.........................................................................................................155

The HtmlInputControl Class ................................................................................................................155

The Page Class ............................................................................................................156

Sending the User to a New Page ........................................................................................................157

HTML Encoding...................................................................................................................................158

Application Events .......................................................................................................160

The global.asax File............................................................................................................................161

Additional Application Events .............................................................................................................162

ASP.NET Configuration ................................................................................................163

The web.config File ............................................................................................................................163

Nested Configuration..........................................................................................................................164

Storing Custom Settings in the web.config File .................................................................................166

The Website Administration Tool (WAT) .............................................................................................168

The Last Word..............................................................................................................170

■ CONTENTS

x

■ Chapter 6: Web Controls ..................................................................................173

Stepping Up to Web Controls. .....................................................................................173

Basic Web Control Classes . .................................................................................................................174

The Web Control Tags...........................................................................................................................175

Web Control Classes . ..................................................................................................176

The WebControl Base Class..................................................................................................................177

Units .....................................................................................................................................................179

Enumerations .......................................................................................................................................179

Colors ...................................................................................................................................................180

Fonts.....................................................................................................................................................181

Focus ....................................................................................................................................................183

The Default Button................................................................................................................................183

List Controls. ...............................................................................................................184

Multiple-Select List Controls . ..............................................................................................................185

The BulletedList Control .......................................................................................................................187

Table Controls. ............................................................................................................188

Web Control Events and AutoPostBack . .....................................................................193

How Postback Events Work. ................................................................................................................197

The Page Life Cycle ..............................................................................................................................198

A Simple Web Page. ....................................................................................................201

Improving the Greeting Card Generator. ..............................................................................................206

Generating the Cards Automatically . ...................................................................................................208

The Last Word. ............................................................................................................211

■ Chapter 7: Error Handling, Logging, and Tracing.............................................213

Common Errors. ..........................................................................................................213

Exception Handling. ....................................................................................................215

The Exception Class .............................................................................................................................215

The Exception Chain .............................................................................................................................217

Download from Wow! eBook <www.wowebook.com>

■ CONTENTS

xi

Handling Exceptions ....................................................................................................218

Catching Specific Exceptions .............................................................................................................219

Nested Exception Handlers.................................................................................................................221

Exception Handling in Action..............................................................................................................222

Mastering Exceptions .........................................................................................................................224

Throwing Your Own Exceptions...................................................................................224

Logging Exceptions......................................................................................................229

Viewing the Windows Event Logs.......................................................................................................229

Writing to the Event Log .....................................................................................................................232

Custom Logs.......................................................................................................................................234

A Custom Logging Class.....................................................................................................................236

Retrieving Log Information .................................................................................................................237

Page Tracing................................................................................................................239

Enabling Tracing.................................................................................................................................240

Tracing Information ............................................................................................................................240

Writing Trace Information...................................................................................................................246

Application-Level Tracing...................................................................................................................250

The Last Word..............................................................................................................252

■ Chapter 8: State Management .........................................................................253

The Problem of State ...................................................................................................253

View State....................................................................................................................253

The ViewState Collection....................................................................................................................254

A View State Example.........................................................................................................................254

Making View State Secure .................................................................................................................255

Retaining Member Variables ..............................................................................................................257

Storing Custom Objects......................................................................................................................259

Transferring Information Between Pages....................................................................260

Cross-Page Posting ............................................................................................................................260

The Query String.................................................................................................................................265

■ CONTENTS

xii

Cookies ........................................................................................................................269

A Cookie Example...............................................................................................................................271

Session State...............................................................................................................272

Session Tracking ................................................................................................................................272

Using Session State............................................................................................................................273

A Session State Example....................................................................................................................274

Session State Configuration ........................................................................................277

Cookieless ..........................................................................................................................................278

Timeout...............................................................................................................................................281

Mode...................................................................................................................................................281

Application State..........................................................................................................286

An Overview of State Management Choices................................................................288

The Last Word..............................................................................................................290

Part 3: Building Better Web Forms .......................................................................291

■ Chapter 9: Validation .......................................................................................293

Understanding Validation.............................................................................................293

The Validation Controls.......................................................................................................................294

Server-Side Validation........................................................................................................................295

Client-Side Validation .........................................................................................................................295

The Validation Controls................................................................................................295

A Simple Validation Example..............................................................................................................297

Other Display Options .........................................................................................................................299

Manual Validation...............................................................................................................................302

Validating with Regular Expressions ..................................................................................................304

A Validated Customer Form................................................................................................................308

Validation Groups................................................................................................................................313

The Last Word..............................................................................................................314

■ CONTENTS

xiii

■ Chapter 10: Rich Controls ................................................................................315

The Calendar................................................................................................................315

Formatting the Calendar.....................................................................................................................317

Restricting Dates ................................................................................................................................319

The AdRotator..............................................................................................................323

The Advertisement File.......................................................................................................................323

The AdRotator Class ...........................................................................................................................325

Pages with Multiple Views...........................................................................................326

The MultiView Control ........................................................................................................................328

The Wizard Control .............................................................................................................................333

The Last Word..............................................................................................................341

■ Chapter 11: User Controls and Graphics..........................................................343

User Controls ...............................................................................................................343

Creating a Simple User Control ..........................................................................................................344

Independent User Controls .................................................................................................................347

Integrated User Controls.....................................................................................................................349

User Control Events ............................................................................................................................352

Passing Information with Events ........................................................................................................354

Dynamic Graphics........................................................................................................357

Basic Drawing ....................................................................................................................................357

Drawing a Custom Image ...................................................................................................................360

Placing Custom Images Inside Web Pages.........................................................................................361

Image Format and Quality ..................................................................................................................363

The Last Word..............................................................................................................366

■ Chapter 12: Styles, Themes, and Master Pages...............................................367

Styles...........................................................................................................................367

Style Types .........................................................................................................................................368

Creating a Basic Inline Style...............................................................................................................368

Creating a Style Sheet ........................................................................................................................377

Tải ngay đi em, còn do dự, trời tối mất!