- •About the Authors
- •Contents at a Glance
- •Contents
- •Introduction
- •Goal of the Book
- •How to Use this Book
- •Introduction to the .NET Framework
- •Common Language Runtime (CLR)
- •Class Library
- •Assembly
- •Versioning
- •Exceptions
- •Threads
- •Delegates
- •Summary
- •Introduction to C#
- •Variables
- •Initializing Variables
- •Variable Modifiers
- •Variable Data Types
- •Types of Variables
- •Variable Scope
- •Types of Data Type Casting
- •Arrays
- •Strings
- •Initializing Strings
- •Working with Strings
- •Statements and Expressions
- •Types of Statements
- •Expressions
- •Summary
- •Classes
- •Declaring Classes
- •Inheritance
- •Constructors
- •Destructors
- •Methods
- •Declaring a Method
- •Calling a Method
- •Passing Parameters to Methods
- •Method Modifiers
- •Overloading a Method
- •Namespaces
- •Declaring Namespaces
- •Aliases
- •Structs
- •Enumerations
- •Interfaces
- •Writing, Compiling, and Executing
- •Writing a C# Program
- •Compiling a C# Program
- •Executing a C# Program
- •Summary
- •Arrays
- •Single-Dimensional Arrays
- •Multidimensional Arrays
- •Methods in Arrays
- •Collections
- •Creating Collections
- •Working with Collections
- •Indexers
- •Boxing and Unboxing
- •Preprocessor Directives
- •Summary
- •Attributes
- •Declaring Attributes
- •Attribute Class
- •Attribute Parameters
- •Default Attributes
- •Properties
- •Declaring Properties
- •Accessors
- •Types of Properties
- •Summary
- •Introduction to Threads
- •Creating Threads
- •Aborting Threads
- •Joining Threads
- •Suspending Threads
- •Making Threads Sleep
- •Thread States
- •Thread Priorities
- •Synchronization
- •Summary
- •Case Study
- •Project Life Cycle
- •Analyzing Requirements
- •High-Level Design
- •Primary and Foreign Keys
- •Referential Integrity
- •Normalization
- •Designing a Database
- •Low-Level Design
- •Construction
- •Integration and Testing
- •User Acceptance Testing
- •Implementation
- •Operations and Maintenance
- •Summary
- •Creating a New Project
- •Console Application
- •Windows Applications
- •Creating a Windows Application for the Customer Maintenance Project
- •Creating an Interface for Form1
- •Creating an Interface for WorkerForm
- •Creating an Interface for CustomerForm
- •Creating an Interface for ReportsForm
- •Creating an Interface for JobDetailsForm
- •Summary
- •Performing Validations
- •Identifying the Validation Mechanism
- •Using the ErrorProvider Control
- •Handling Exceptions
- •Using the try and catch Statements
- •Using the Debug and Trace Classes
- •Using the Debugging Features of Visual Studio .NET
- •Using the Task List
- •Summary
- •Creating Form1
- •Connecting WorkerForm to the Workers Table
- •Connecting CustomerForm to the tblCustomer Table
- •Connecting the JobDetails Form
- •to the tblJobDetails Table
- •Summary
- •Introduction to the Crystal Reports Designer Tool
- •Creating the Reports Form
- •Creating Crystal Reports
- •Creating the Windows Forms Viewer Control
- •Creating the Monthly Worker Report
- •Summary
- •Introduction to Deploying a Windows Application
- •Deployment Projects Available in Visual Studio .NET
- •Deployment Project Editors
- •Summary
- •Case Study
- •Project Life Cycle
- •Analyzing Requirements
- •High-Level Design
- •Low-Level Design
- •Summary
- •Populating the TreeView Control
- •Displaying Employee Codes in the TreeView Control
- •Event Handling
- •Displaying Employee Details in the ListView Control
- •Summary
- •Case Study
- •Project Life Cycle
- •Analyzing Requirements
- •High-Level Design
- •Low-Level Design
- •Summary
- •Adding the Programming Logic to the Application
- •Adding Code to the Form Load() Method
- •Adding Code to the OK Button
- •Adding Code to the Exit Button
- •Summary
- •The Created Event
- •Adding Code to the Created Event
- •Overview of XML
- •The XmlReader Class
- •The XmlWriter Class
- •Displaying Data in an XML Document
- •Displaying an Error Message in the Event Log
- •Displaying Event Entries from Event Viewer
- •Displaying Data from the Summary.xml Document in a Message Box
- •Summary
- •Airline Profile
- •Role of a Business Manager
- •Role of a Network Administrator
- •Role of a Line-of-Business Executive
- •Project Requirements
- •Creation and Deletion of User Accounts
- •Addition of Flight Details
- •Reservations
- •Cancellations
- •Query of Status
- •Confirmation of Tickets
- •Creation of Reports
- •Launch of Frequent Flier Programs
- •Summarizing the Tasks
- •Project Design
- •Database Design
- •Web Forms Design
- •Enabling Security with the Directory Structure
- •Summary
- •Getting Started with ASP.NET
- •Prerequisites for ASP.NET Applications
- •New Features in ASP.NET
- •Types of ASP.NET Applications
- •Exploring ASP.NET Web Applications
- •Introducing Web Forms
- •Web Form Server Controls
- •Configuring ASP.NET Applications
- •Configuring Security for ASP.NET Applications
- •Deploying ASP.NET Applications
- •Creating a Sample ASP.NET Application
- •Creating a New Project
- •Adding Controls to the Project
- •Coding the Application
- •Summary
- •Creating the Database Schema
- •Creating Database Tables
- •Managing Primary Keys and Relationships
- •Viewing the Database Schema
- •Designing Application Forms
- •Standardizing the Interface of the Application
- •Common Forms in the Application
- •Forms for Network Administrators
- •Forms for Business Managers
- •Forms for Line-of-Business Executives
- •Summary
- •The Default.aspx Form
- •The Logoff.aspx Form
- •The ManageUsers.aspx Form
- •The ManageDatabases.aspx Form
- •The ChangePassword.aspx Form
- •Restricting Access to Web Forms
- •The AddFl.aspx Form
- •The RequestID.aspx Form
- •The Reports.aspx Form
- •The FreqFl.aspx Form
- •Coding the Forms for LOB Executives
- •The CreateRes.aspx Form
- •The CancelRes.aspx Form
- •The QueryStat.aspx Form
- •The ConfirmRes.aspx Form
- •Summary
- •Designing the Form
- •The View New Flights Option
- •The View Ticket Status Option
- •The View Flight Status Option
- •The Confirm Reservation Option
- •Testing the Application
- •Summary
- •Locating Errors in Programs
- •Watch Window
- •Locals Window
- •Call Stack Window
- •Autos Window
- •Command Window
- •Testing the Application
- •Summary
- •Managing the Databases
- •Backing Up the SkyShark Airlines Databases
- •Exporting Data from Databases
- •Examining Database Logs
- •Scheduling Database Maintenance Tasks
- •Managing Internet Information Server
- •Configuring IIS Error Pages
- •Managing Web Server Log Files
- •Summary
- •Authentication Mechanisms
- •Securing a Web Site with IIS and ASP.NET
- •Configuring IIS Authentication
- •Configuring Authentication in ASP.NET
- •Securing SQL Server
- •Summary
- •Deployment Scenarios
- •Deployment Editors
- •Creating a Deployment Project
- •Adding the Output of SkySharkDeploy to the Deployment Project
- •Deploying the Project to a Web Server on Another Computer
- •Summary
- •Organization Profile
- •Project Requirements
- •Querying for Information about All Books
- •Querying for Information about Books Based on Criteria
- •Ordering a Book on the Web Site
- •Project Design
- •Database Design
- •Database Schema
- •Web Forms Design
- •Flowcharts for the Web Forms Modules
- •Summary
- •Introduction to ASP.NET Web Services
- •Web Service Architecture
- •Working of a Web Service
- •Technologies Used in Web Services
- •XML in a Web Service
- •WSDL in a Web Service
- •SOAP in a Web Service
- •UDDI in a Web Service
- •Web Services in the .NET Framework
- •The Default Code Generated for a Web Service
- •Testing the SampleWebService Web Service
- •Summary
- •Creating the SearchAll() Web Method
- •Creating the SrchISBN() Web Method
- •Creating the AcceptDetails() Web Method
- •Creating the GenerateOrder() Web Method
- •Testing the Web Service
- •Securing a Web Service
- •Summary
- •Creating the Web Forms for the Bookers Paradise Web Site
- •Adding Code to the Web Forms
- •Summary
- •Case Study
- •Project Life Cycle
- •Analyzing Requirements
- •High-Level Design
- •Low-Level Design
- •Summary
- •Overview of Mobile Applications
- •The Microsoft Mobile Internet Toolkit
- •Overview of WAP
- •The WAP Architecture
- •Overview of WML
- •The Mobile Web Form
- •The Design of the MobileTimeRetriever Application
- •Creating the Interface for the Mobile Web Forms
- •Adding Code to the MobileTimeRetriever Application
- •Summary
- •Creating the Forms Required for the MobileCallStatus Application
- •Creating the frmLogon Form
- •Creating the frmSelectOption Form
- •Creating the frmPending Form
- •Creating the frmUnattended Form
- •Adding Code to the Submit Button in the frmLogon Form
- •Adding Code to the Query Button in the frmSelectOption Form
- •Adding Code to the Mark checked as complete Button in the frmPending Form
- •Adding Code to the Back Button in the frmPending Form
- •Adding Code to the Accept checked call(s) Button in the frmUnattended Form
- •Adding Code to the Back Button in the frmUnattended Form
- •Summary
- •What Is COM?
- •Windows DNA
- •Microsoft Transaction Server (MTS)
- •.NET Interoperability
- •COM Interoperability
- •Messaging
- •Benefits of Message Queues
- •Limitations
- •Key Messaging Terms
- •Summary
- •Pointers
- •Declaring Pointers
- •Types of Code
- •Implementing Pointers
- •Using Pointers with Managed Code
- •Working with Pointers
- •Compiling Unsafe Code
- •Summary
- •Introduction to the Languages of Visual Studio .NET
- •Visual C# .NET
- •Visual Basic .NET
- •Visual C++ .NET
- •Overview of Visual Basic .NET
- •Abstraction
- •Encapsulation
- •Inheritance
- •Polymorphism
- •Components of Visual Basic .NET
- •Variables
- •Constants
- •Operators
- •Arrays
- •Collections
- •Procedures
- •Arguments
- •Functions
- •Adding Code to the Submit Button
- •Adding Code to the Exit Button
- •Summary
- •Introduction to Visual Studio .NET IDE
- •Menu Bar
- •Toolbars
- •Visual Studio .NET IDE Windows
- •Toolbox
- •The Task List Window
- •Managing Windows
- •Customizing Visual Studio .NET IDE
- •The Options Dialog Box
- •The Customize Dialog Box
- •Summary
- •Index
INTRODUCTION TO VISUAL BASIC .NET Appendix B 857
The public variables can be used across modules and also can be declared at the module-level. A public variable is declared in the following statements.
Public Dim int1 As Integer
or
Public int1 As Integer
Constants
Suppose you need to use a particular value in an application. The application needs to calculate and display the percentage of marks obtained by each student in an examination. To calculate the percentage of marks, the application needs to use the maximum score at a number of places. In this case, instead of repeating each value every time, you can use constants. A variable whose value remains the same during the execution of a program is called a constant.
To declare a constant, you can use the following statement:
Const maxMarks As Integer = 100
or
Const maxMarks = 100
Each of the previously mentioned statements declares a constant by the name maxMaks and initializes it with the value 100. These statements use a const keyword to declare a constant.
In case of any change in value, the processing of constants is faster than with variables; only the value at the point of declaring the constant needs to be changed.
You have learned about the variables and related concepts. You will now learn how to perform various operations on these variables.
Operators
A unit of code that performs an operation on one or more variables or elements is known as an operator. An operator can be used to perform various operations, such as arithmetic operations, concatenation operations, comparison operations, and logical operations.
858 |
Part X |
APPENDIXES |
|
|
|
The following operators are supported by Visual Basic .NET:
Arithmetic operators. Used for mathematical calculations.
Comparison operators. Used for comparisons.
Assignment operators. Used for assignment operations.
Concatenation operators. Used for combining strings.
Logical/Bitwise operators. Used for logical operations.
Arrays |
|
F |
|
|
|
Variables are used to store data. At times, thereYmay be situations where you need |
||
|
|
M |
to work with multiple variables that storeLa similar type of information. For exam- |
||
ple, the names of about 50 employees need to be stored. Declaring these 50 vari- |
||
ables is a monotonous and time-consuming task. Therefore, an array can be |
||
|
E |
|
declared to make the task easy. |
|
|
|
T |
|
A collection of variables ofAthe same data type is called array. The variables that form an array have the same name and are known as array elements. An index number refers to each variable in an array, which is its position in the array. The index number helps in distinguishing one array element from another. As an example,
you can declare an array containing 50 variables of the String data type in order to store the names of 50 employees. When an array is declared, you need to create and initialize all the variables immediately. When an Integer array is declared, all the elements are initialized to 0. As compared to multiple variables, it is easier to manipulate an array and its elements. You can manipulate arrays by using the various loop statements that are provided by Visual Basic .NET.
In Visual Basic .NET, all the arrays that you create are basically derived from the Array class of the System namespace. You can also use the methods and properties of the System.Array type to manipulate these arrays. The next section will discuss how to declare these arrays.
Declaring Arrays
You need to declare an array before using the array in a program, just like a variable. While declaring an array, you need to specify the array name, the data t ype of the array, and the number of variables that the array contains. In Visual Basic
.NET, you need to declare arrays in a way similar to that in which variables are
Team-Fly®
INTRODUCTION TO VISUAL BASIC .NET Appendix B 859
declared. You can do this by using the Dim statement, the Public statement, or the Private statement. The syntax that is used to declare an array is:
Dim ArrayName (NumElements) As DataType
In the syntax mentioned, the following list contains specifications:
ArrayName. Specifies the name of the array.
NumElements. Specifies the number of elements that the array can
contain.
DataType. Specifies the data t ype of the elements. This is optional.
While declaring arrays, parentheses need to be included after the array name to differentiate an array from a variable. Consider the following code statement:
Dim intArray1(10) As Integer
An Integer array by the name intArray1, which can contain 11 elements, is declared in the code mentioned above. Why are there 11 elements and not 10 as mentioned in the code? It is because arrays are zero-based. The index number, which is between 0 and 10, adds up to 11. The code mentioned previously is part of the statement given here:
Dim IntArray () As Integer = New Integer(10) {}
Differences between Visual Basic .NET and Visual Basic 6.0 in Terms of Arrays
I will now discuss some of the basic differences between Visual Basic .NET and the earlier versions of Visual Basic in terms of arrays.By default, the starting index of an array is 0 in Visual Basic 6.0, and you can change the starting index to 1 by using the Option Base statement. In addition, the starting index for individual array declarations can be changed. The number of elements in the array is equal to the number specified during an array declaration statement plus one, if the default-starting index is set to 0. However, the starting index for every array is 0 and cannot be changed in Visual Basic .NET. The Option Base statement is not supported by Visual Basic .NET. Interoperability with arrays of other programming languages is permitted because most programming languages support zerobased arrays.
860 |
Part X |
APPENDIXES |
|
|
|
Initializing Arrays
Each element of an array is initialized as if it were a separate variable. However, if an array is not initialized, then Visual Basic .NET initializes each array element to the default value of the data type of the array.
Consider the code given here. It explains how to declare and initialize an array.
Dim booksArray1(4) As String booksArray1(0) = “Introducing VB.NET” booksArray1(1) = “Introducing ADO.NET” booksArray1(2) = “Introducing VC++.NET” booksArray1(3) = “Introducing ASP.NET” booksArray1(4) = “Introducing C#”
In the previously mentioned code, an array, booksArray1, is declared that can contain five String type elements. This arr ay stores Introducing VB.NET at index 0,
Introducing ADO.NET at index 1, Introducing VC++.NET at index 2, Introducing
ASP.NET at index 3, and Introducing C# at index 4. It may be mentioned that 0 is the starting index or the lower bound that remains fixed for all the arrays. The upper bound or the end index is 4, and it can differ from one array to another.
An array can be declared or initialized in a single line by using the new keyword provided by Visual Basic .NET. This example shows how to declare an array by using a single line of code.
Dim booksArray1() As String = {“Introducing VB.NET”, “Introducing ADO.NET”,
“Introducing VC++.NET”, “Introducing ASP.NET”, “Introducing C#”}
To retrieve the values stored in a particular index position, the index number and the name of the array needs to be specified.The following statements illustrate the point:
Dim strVar As String
strVar = booksArray1(2)
After the execution of the previously mentioned statements, the value of the String type variable, strVar, which is stored in the index position 2 in booksArray1, is retrieved.