Sams Publishing, 2002. — 339 p. — ISBN: 0-672-32148-3.
This book provides a comprehensive transition from JScript to the .NET Framework/platform including coverage of JScript.NET (language), ASP.NET, and Windows Forms. The book will discuss the language changes to ease the developer into working with the new syntax. and then several chapters on ASP.NET will correlate the differences between the former ASP programming model and the new .NET programming model.
Introduction to JScript .NET
Development of JScript .NET
Enter JScript .NET
What Does JScript .NET Have to Offer?
Backward Compatibility with JScript
Fully Compiled and Optimized for .NET
Organization of This Book
Coding Conventions
Organization of JScript .NET
Packages and Namespaces
Namespaces in .NET
The Difference Between Packages and Namespaces
Classes and Interfaces
Writing Code as Objects
Deciding on Base Classes Versus Interfaces
Class Members
Instance Members
Static Members
Making Methods Extensible
Assemblies, Executables, and Libraries
Creating Assemblies for Code Access
Basic JScript .NET Program
Creation of a Basic Console Program
Datatypes, Arrays, and Strings
Strongly Typing in JScript .NET
How to Strongly Type Variables
Providing Initial Values for Variables
Performance and Strongly Typed Variables
The Flexibility of Native JScript Variables
Basic Datatypes
Primitive Types
Special Types: null and undefined
Declaring and Typing Arrays
Declaring JScript and JScript .NET Arrays
Typing Arrays for Performance
Multidimensional Array Support
Using the String Object
Declaring Strings
String Manipulation
JScript Functions and Properties
CLR String Instance Methods and Properties
CLR String Static Methods and Properties/Fields
Using StringBuilder Instead of String
Operators and Commenting
Comparison and Assignment Operators
Arithmetic Operators and Concatenation
Arithmetic Operators in Statements
Inline Arithmetic Operators
The JScript Math Object
The Concatenation Operator
Bitwise and Boolean Operators
Bitwise Operators
Boolean Operators
Object Operators
Using Comments
Inline/Block Comments
Single-line and End-of-line Comments
Controlling Program Flow
Conditional Statements
Branching with if, if.else, and if.else if.else
Variable Comparison with switch
Inline Return Conditions and the Ternary Operator
Loop Statements
Incremental Looping with for
Conditional Looping with while
Enumerations and the for.in Loop
Creating an Enumerator Object
Using for.in for Typed Enumeration
The CLR Enumeration Interfaces
Using Labels with continue and break
Using the continue Statement
Where and When to Use break
Using Labels for More Flow Control
Creating Classes
An Overview of Classes
A Simple Class Declaration
What a Class Can Contain
Class and Member Attributes
Visibility Attributes
Behavior Attributes
Existential Attributes
Versioning Attributes
Custom Attributes
Inheritance and Subclassing
Extending Classes
Using Interfaces Over a Subclass
Using Encapsulation Over a Subclass
Declaring Constructors
Default Constructors
Overloaded Constructors
Base Constructors
Interfaces and Class Members
An Overview of Interfaces
Interface Structure
Interface Attributes
Interface Members
Implementing Interfaces
Simple Interface Implementation
Inherited Interface Implementation
Compiler-Defined Member Implementation
Explicitly Defined Member Implementation
Declaring Methods
Class Method Syntax
Rules for Overloading Methods
Using Static Methods
Properties and Fields
Fields for Simple Variable Access
Properties for Versioning
Event Support
Consuming Events
Subclassing Controls for Events
JScript .NET and Delegates
Exception Handling
Wrapping Code with try and catch
The Purpose of try.catch.finally Blocks
The Structure of try.catch.finally Blocks
Specifying the Right catch Statement
Using Multiple catch Statements
Ensuring That Code Is Cleaned Up with finally
Throwing Exceptions
Throwing an Exception from Normal Code
Where to Rethrow Unhandled Exceptions
How to Make Your Own Exceptions
JScript .NET Compiler Features
Command-Line Compiler Usage
Compiling Executable Code
Compiling Library Code
Referencing Libraries
Code-Generation Options
Conditional Compilation
Defining Symbols on the Command Line
Marking Code to Use Conditional Compilation
Additional Code Directives
Symbols Defined by the CLR
Assembly-Level Attributes
Assembly Attribute Syntax
Versioning Attributes
Strongly Naming Your Assembly Using Attributes
File Access
File, FileInfo, Directory, DirectoryInfo, and Path
The Path Class
The File Class
The Directory Class
The FileSystemInfo, FileInfo, and DirectoryInfo Classes
The Stream Class and IO
IO Read/Write Classes
XML
The System.XML Namespace
Loading XML Content
Enumerating Elements
Enumerating Attributes
Creating New XML Content
Regular Expressions
JScript Regex Support
Inline Regular Expression Support
Global Regular Expression Object
JScript Regex Patterns
Using .NET Regular Expressions
Regex Class
Match Class
Group and Capture Classes
Basic Pattern Matching
Executing Pattern Matches
Getting Named Pattern Groups Back
Testing for Pattern Success
Getting All Successful Matches
Static Regular Expression Syntax
Using Regex for String Replacement
Performing Basic String Replacement
Reusing Matched Patterns for Replacements
Accessing the Internet
The System.Net Namespace
Simple Web Requests
Asynchronous Web Requests
Using JScript .NET in ASP.NET
ASP.NET Page-Level Directives
The Page Directive
The Assembly, Import, and Register Directives
Server-Side Code Blocks, In-line Code, and Code-Behind
Creating Server-Side Code Blocks and In-line Code
Code-Behind
Writing Basic Event Handlers
Trapping the Page.Load Event
Using Other Page Object Events
Windows Forms Programming in JScript .NET
Setting Up a Basic Form
Buttons, Labels, and Text Controls
Using the Docking and Layout Feature
Implementing Simple Menus
Using the Common Dialog Controls
Wrapping Up in JPad
A JScript .NET Compiler Reference