You are previewing .NET Framework Essentials, Third Edition.
O'Reilly logo
.NET Framework Essentials, Third Edition

Book Description

Fully updated for version 1.1 of the .NET Framework, .NET Framework Essentials, 3rd Edition is an objective, concise, no-nonsense overview of the Microsoft .NET Framework for developing web applications and services. Written for intermediate to advanced VB, C/C++, Java, and Delphi developers, .NET Framework Essentials, 3rd Edition is also useful to system architects and leaders who are assessing tools for future projects. .NET Framework Essentials touches all the bases--from the Common Language Run-Time (CLR) and key class libraries to the specialized packages for ASP.NET, Windows Forms, XML Web Services, and data access (ADO.NET). The authors survey each major .NET language, including VB.NET, C#, J#, and Managed C++, as well as MSIL, clearing away the noise and hype, and presenting a clear, practical look at the underlying technologies. .NET Framework Essentials also provides a handy reference to the most commonly used features of .NET Framework. Written by two veteran web applications developers, .NET Framework Essentials, 3rd Edition is one of the most complete, concise, and ultimately useful books to describe the breadth of technology represented by .NET. Compact and free of fluff or proprietary hype, .NET Framework Essentials is an outstanding value for experienced programmers and architects who need to get up to speed quickly.

Table of Contents

  1. Table of Contents
  2. Preface
    1. Audience
    2. About This Book
    3. Assumptions This Book Makes
    4. Conventions Used in This Book
    5. How to Contact Us
    6. Acknowledgments
      1. Thuan Thai
      2. Hoang Q. Lam
  3. .NET Overview
    1. Behind Microsoft .NET
    2. The .NET Platform
    3. .NET Framework Design Goals
      1. Component Infrastructure
      2. Language Integration
      3. Internet Interoperation
      4. Simplified Development
      5. Simplified Deployment
      6. Reliability
      7. Security
    4. .NET Framework
  4. The Common Language Runtime
    1. CLR Environment
    2. CLR Executables
      1. Hello, World: Managed C++
      2. Hello, World: C#
      3. Hello, World: VB.NET
      4. Hello, World: J#
      5. .NET Portable Executable File
    3. Metadata
      1. Type Libraries on Steroids
      2. Examining Metadata
      3. Inspecting and Emitting Metadata
      4. Interoperability Support
    4. Assemblies and Manifests
      1. Assemblies Versus Components
      2. Unique Identities
      3. IL Code
      4. Versioning
      5. Deployment
      6. Security
      7. Side-by-Side Execution
      8. Sharing and Reuse
      9. Manifests: Assembly Metadata
      10. Creating Assemblies
      11. Using Assemblies
    5. Intermediate Language (IL)
    6. The CTS and CLS
      1. The Common Type System (CTS)
        1. Value types
        2. Reference types
        3. Boxing and unboxing
        4. Classes, properties, indexers
        5. Interfaces
        6. Delegates
      2. The Common Language Specification (CLS)
    7. CLR Execution
      1. Class Loader
      2. Verifier
      3. JIT Compilers
      4. Execution Support and Management
    8. Summary
  5. .NET Programming
    1. Common Programming Model
      1. System.Object
      2. Major Namespaces
    2. Core Features and Languages
      1. Managed C++ Code
      2. VB.NET Code
      3. C# Code
      4. J# Code
      5. Intermediate Language (IL) Code
    3. Language Integration
      1. Vehicle Class in Managed C++
      2. Car Class in VB.NET
      3. Plane Class in C#
      4. Test Driver in J#
    4. Summary
  6. Working with .NET Components
    1. Deployment Options
      1. Private Components
        1. One-directory deployment
        2. Multiple-directory deployment
      2. Shared Components
        1. Generating a random key pair
        2. Making the vehicle component a shared assembly
        3. Making the car component a shared assembly
        4. Making the plane component a shared assembly
        5. Viewing the GAC
        6. Building and testing the drive.exe
        7. Adding new versions
    2. Distributed Components
      1. Distributed Hello Server
      2. Remote Hello Client
      3. Distributed Garbage Collector
    3. COM+ Services in .NET
      1. Attribute-Based Programming
        1. Developing custom attributes
        2. Using custom attributes
        3. Inspecting attributes
      2. Transactions
      3. Object Pooling
      4. Role-Based Security
        1. Configuring role-based security
        2. Programming role-based security
    4. Message Queuing
      1. Enqueue
      2. Dequeue
    5. Summary
  7. Data and XML
    1. ADO.NET Architecture
    2. ADO.NET Benefits
      1. Interoperability
      2. Scalability
      3. Productivity
      4. Performance
    3. Content Components
      1. DataSet
        1. Creating a DataSet: An example in C#
        2. XML and tables sets
      2. DataTable
        1. Relations and constraints
      3. DataView
      4. DataRelation
    4. .NET Framework Data Providers
      1. Connection
      2. The Command and Data Reader Objects
        1. Command execution
        2. The data reader object
      3. The DataAdapter Object
    5. XML in the .NET Framework
      1. XML Parsers
      2. XML Classes
        1. XmlNode and its derivatives
        2. XmlNodeList
        3. XmlNamedNodeMap
        4. XmlDocument
        5. XmlReader
        6. XmlWriter
        7. XslTransform
        8. XmlDataDocument
    6. Summary
  8. Web Services
    1. Web Services in Practice
    2. Web Services Framework
      1. Web Services Architecture
      2. Web Services Wire Formats
        1. HTTP GET and HTTP POST
        2. SOAP
      3. Web Services Description (WSDL)
        1. WSDL structure
      4. Web Services Discovery
        1. Static discovery
        2. Dynamic discovery
        3. Discovery setting in practice
        4. UDDI
      5. The System.Web.Services Namespace
    3. Web Services Provider
      1. Web Service Provider Example
        1. Web.Config
        2. Discover files
    4. Web Services Consumers
      1. HTTP GET Consumer
      2. HTTP POST Consumer
      3. Non-.NET Consumers
    5. Async Web Services
    6. SOAP Header in Web Services
    7. Web Services and Security
      1. System Security
      2. Application Security
    8. Summary
  9. ASP.NET
    1. ASP
    2. ASP.NET
    3. The System.Web.UI Namespace
      1. Control Class
        1. Control’s properties
        2. Control class methods
      2. Page Class
        1. Page class properties and methods
      3. UserControl Class
      4. System.Web.UI.HtmlControls Namespace
      5. System.Web.UI.WebControls Namespace
    4. Web Form Syntax
      1. Directives
        1. @ Page
        2. @ Control
        3. @ Import
        4. @ Implements
        5. @ Register
        6. @ Assembly
        7. @ OutputCache
        8. @ Reference
      2. Code Declaration Blocks
      3. Code-Rendering Blocks
      4. HTML-Control Syntax
      5. Custom-Control Syntax
      6. Data-Binding Expressions
      7. Server-Side Object Tags
      8. Other Elements
    5. ASP.NET Application Development
      1. Web Form Components
        1. Web Form events
      2. The Life Cycle of a Web Form
        1. Configuration
        2. Event handling
        3. Termination
      3. Server Controls
      4. Custom Server Controls
        1. Pagelets
        2. Control derivatives
      5. Event-Driven Programming
      6. Custom Server Controls and Client Script
      7. ASP.NET and Caching
    6. ASP.NET and Web Services
      1. The WebService Directive
      2. The WebMethod Attribute
      3. Using Web Services
    7. Data Binding and the Use of Templates
      1. DataGrid
      2. DataList
      3. Repeater
    8. State Management and Scalability
      1. ASP.NET Session-State Management
        1. Out-of-process session-state management
        2. SQL Server session-state management
        3. Cookieless session-state management
      2. Performance Versus Scalability and Reliability
    9. Forms Authentication in ASP.NET
    10. Summary
  10. Windows Forms
    1. Introducing Windows Forms
    2. The System.Windows.Forms Namespace
      1. Control Class
      2. Form Class
        1. Extending existing controls
        2. Creating composite controls
      3. Application Class
    3. Windows Forms Development
      1. Windows Forms Application
      2. Windows Controls
        1. Adding controls onto the form
        2. Binding the event handler
        3. Data binding
        4. Arranging controls
      3. Visual Inheritance
      4. MDI Applications
      5. Stage Deployment
    4. Windows Forms and Web Services
    5. Summary
  11. .NET and Mobile Devices
    1. ASP.NET Mobile Controls
      1. System.Web.UI.MobileControls namespace
      2. ASP.NET Web Server Controls Versus Mobile Controls
      3. ASP.NET Mobile Web Application
    2. .NET Compact Framework
      1. The .NET Framework Versus the .NET Compact Framework
      2. Mobile Devices and SQL Server 2000 CE
        1. Storing off-line data as XML
        2. Storing off-line data in SQL Server for Windows CE
    3. Summary
  12. .NET Languages
    1. Microsoft-Supported Languages for .NET
    2. Third-Party Languages for .NET
  13. Common Acronyms
  14. Common Data Types
    1. Usage
      1. Array
      2. ArrayList
      3. BitArray
      4. HashTable
      5. Queue
      6. SortedList
      7. Stack
  15. Common Utilities
    1. Assembly Generation Utility (al.exe)
    2. Assembly Registration Utility (gacutil.exe)
    3. MSIL Assembler (ilasm.exe)
    4. MSIL Disassembler (ildasm.exe)
    5. C++ Compiler (cl.exe)
    6. C# Compiler (csc.exe)
    7. Visual Basic Compiler (vbc.exe)
    8. PE File Format Viewer (dumpbin.exe)
    9. Type Library Exporter (tlbexp.exe)
    10. Type Library Importer (tlbimp.exe)
    11. XML Schema Definition Tool (xsd.exe)
      1. XDR to XSD
      2. XML to XSD
      3. Classes to XSD
      4. XSD to Classes
      5. XSD to DataSet
    12. Strong Name Utility (sn.exe)
    13. Web Service Utility (wsdl.exe)
  16. Index