Microsoft Visual C# .NET Step by Step Comments and Corrections (314220)



The information in this article applies to:

  • MSPRESS Microsoft Visual C# .NET Step by Step ISBN 0-7356-1289-7

This article was previously published under Q314220

SUMMARY

This article contains comments, corrections, and information about known errors relating to the Microsoft Press book Microsoft Visual C# .NET Step by Step, ISBN 0-7356-1289-7.

The following topics are covered:

  • Page xi: Incorrect System Requirements
  • Page 9: Missing Word In Instructions
  • Page 16: Error In Step 7
  • Page 22: Error In Sample Code
  • Page 25: Your Name Should Be Enter Your Name In Step 8
  • Page 35: Errors In Step 5
  • Page 43: Error In Second Bullet Item
  • Page 46: Error In methodName Bullet
  • Page 51: Incorrect Text Regarding Variables
  • Page 57: readDouble Should Be readInt
  • Page 60: "getInt" Should Be "readInt"
  • Page 60: Error In Code Sample
  • Page 60: Error In Code Sample
  • Page 128: Typographical Error
  • Page 140: Missing Statement Regarding Const Field
  • Page 141: 'public static field' Should Be 'public static method'
  • Page 157: Stack Should Be Heap
  • Page 160: Incorrect Statement About Unboxing
  • Page 161: Incorrect Graphic
  • Pages 184 & 185: Lines Incorrectly Formatted As Code
  • Pages 193 And 194: Correction To ArrayList Code Sample
  • Page 199: Image Incorrectly Shows 12 Cards Per Player
  • Page 202: Correction In Step 3
  • Page 254: Incorrect Statement About Sealed Class
  • Page 268: Incorrect Statement About Initializing Properties
  • Page 274: Error In Step 11
  • Page 275: "namespace Windows.Drawing" Should Be "namespace System.Windows.Drawing"
  • Page 282: Incorrect Use of Vertical Ellipses In Code Sample
  • Page 292: "Declare a read-only property" Should Be "Declare a read-only indexer"
  • Page 305: Error In 'important' Block
  • Page 307: "Ticker" Should Be "Ticker Class"
  • Page 307: "Attach and Remove" Should Be "Attach and Detach"
  • Page 319: Error In Struct Vs. Class Box
  • Page 323: Error In Code Sample
  • Page 326: Error In Quick Reference Code Sample
  • Page 332: Incorrect Image
  • Page 333: Incorrect Image
  • Page 337: Incorrect Image
  • Page 347: Missing " In Code Sample
  • Page 414: Image Should Not Include Cancel Button
  • Page 426: UserName Property Is Not Read-Only
  • Page 441: Duplicate Bullet In How To Box
  • Page 487: "XSD" Tags Should Be Changed To "XS"
  • Page 512: Label7 "Label" Property Should Be "Text"
  • Page 522: Typographical Error
  • Page 537: Correction In Step 7
  • Page 538: Authentication Mode Should Be Windows
  • Page 539: "important" Box Needs Additional Text
  • Page 565: Typographical Error

MORE INFORMATION

Page xi: Incorrect System Requirements

Page xi includes Windows XP Home Edition as part of the minimum system requirements. Windows XP Home does not include IIS, so does not meet the minimum requirements for this book. Windows XP Home Edition should be removed from page xi.

Page 9: Missing Word In Instructions

There is an error in the instructions on page 9.

Change:
"On the Build menu, click Build."

To:
"On the Build menu, click Build TextHello."

Page 16: Error In Step 7

There is an error in step 7 on page 16.

Change:
"<summary> tags above the class to read"

To:
"<summary> tags within the class to read"

Page 22: Error In Sample Code

There is an error in the code sample on page 22.

Change:
"private System.Window.Forms.Button button1;"

To:
"private System.Windows.Forms.Button button1;"

Page 25: Your Name Should Be Enter Your Name In Step 8

There is an error in step 8 at the top of page 25.

Change:
"Type your name and then press Enter."

To:
"Type Enter your name then press Enter."

Page 35: Errors In Step 5

There are two errors in step 5 on page 35.

Change:
"select String."

To:
"select string"

Change:
"the Sample Value box."

To:
"the Sample value box."

Page 43: Error In Second Bullet Item

On page 43, in the second bullet,

Change:
"If the 3 binds to the * operator, the result of the multiplication (3 * 4) forms the right hand operand of the / operator and the result of the whole expression is 2 / 12."

To:
"If the 3 binds to the * operator, the result of the multiplication (3 * 2) forms the right hand operand of the / operator and the result of the whole expression 4 / (3 * 2), which is 0 (again integer division)."

Page 46: Error In methodName Bullet

There is an error at the end of the second bullet on page 46.

Change:
"start with a noun,"

To:
"start with a verb,"

Page 51: Incorrect Text Regarding Variables

There is an error on page 51 regarding variables. Change:
"Other statements in the method that come afterwards can use it when the method has finished, even though the variable disappears."

To:
"The variable is created at the statement that defines it, and other statements in the method that come afterwards can use it. Once the method has finished, though, the variable disappears."

Page 57: readDouble Should Be readInt

On page 57, change step 5:

"As before, verify that the readDouble method you have declared compiles without error."

To:
"As before, verify that the readInt method you have declared compiles without error."

Page 60: "getInt" Should Be "readInt"

On page 60, in steps 8 and 11,

Change:
"getInt"

To:
"readInt"

Page 60: Error In Code Sample

There is an error in step 8 on page 60.

Change:
"int noOfDays = readInt("Enter the no of days: "):"

To:
"int noOfDays = readInt("Enter the number of days: "):"

Page 60: Error In Step 10

There is an error in step 10 on page 60.

Change:
"The program displays the Enter The No Of Days prompt in the console window."

To:
"The program displays the Enter the number of days prompt in the console window."

Page 128: Typographical Error

There is an error in the Abstract Data Types block. Change:
"You cannot abstract these fields or methods..."

To:
"You cannot access these fields or methods..."

Page 140: Missing Statement Regarding Const Field

On page 140, the "Creating a Static Field..." section is missing a statement.

Change:
"... is nevertheless static. For example ..."

To:
"... is nevertheless static. However, for reasons beyond the scope of this book, you can only declare const field when the field is an enum, a primitive type, or a string. For example ..."

Page 141: 'public static field' Should Be 'public static method'

There is an incorrect reference to a 'public static field' on page 141. Change:
"Finally, you will write a public static field"

To:
"Finally, you will write a public static method"


Page 157: Stack Should Be Heap

There is an eror in item 7 on page 157.

Change:

"However, the memory acquired for the newly constructed Circle object is not released back to the stack."

To:

"However, the memory acquired for the newly constructed Circle object is not released back to the heap."


Page 160: Incorrect Statement About Unboxing

There is an error in the first paragraph under Unboxing.

Change:
"However, if you try this syntax, you'll get a compiletime error. Instead, you need to use the syntax object o = 42; where o refers to a boxed int containing the value 42. Here are examples:"

To:
"However, if you try this syntax, you'll get a compiletime error. For example:"

Page 161: Incorrect Graphic

On page 161, the graphic at the top is missing some elements.

The arrow leading to the "42" box should come from a square "@" box with the label "object o" (exactly like the box at the bottom of page 159).

The arrow leading out of the "42" box should lead to a square "42" box with the label "int i" (exactly like the the box at the bottom of page 159).

Pages 184 & 185: Lines Incorrectly Formatted As Code

The last line on page 184, and the first two lines on 185 are incorrectly formatted as code. These lines are not part of the code sample at the bottom of page 184.

Pages 193 And 194: Correction To ArrayList Code Sample

On pages 193 and 194, in the code sample for ArrayList,

Change:
ArrayList countdown = new ArrayList();
...
countdown.Remove(7);
...
countdown.RemoveAt(8);
...
(the 4th element, index 5)
...
the 7th element, index 8
				

To:
ArrayList numbers = new ArrayList();
...
numbers.Remove(7);
...
numbers.RemoveAt(8);
...
(the 4th element, index 3)
...
the 7th element, index 6
				

Page 199: Image Incorrectly Shows 12 Cards Per Player

The image on page 199 shows 12 cards per player. This image should show 13 cards per player.

Page 202: Correction In Step 3

On page 202, in step 3,

Change:
"A foreach statement is okay here because you do need..."

To
"A foreach statement is okay here because you do not need..."

Page 254: Incorrect Statement About Sealed Class

On page 254, in the first bulleted item under "Notice that:",

Change:
"(The extension would also be valid if TextReader were a sealed class.)"

To:
"(The extension would also be invalid if TextReader were a sealed class.)"

Page 268: Incorrect Statement About Initializing Properties

On page 268, in the first bullet,

Change:
"You can't initialize a property through a set accessor..."

To:
"You can't initialize a property of a struct using a set accessor..."

Page 274: Error In Step 11

There is an error in step 11 on page 274.

Change all instances of:
"Windows.System.Forms.Form"

To:
"System.Windows.Forms.Form"

Page 275: "namespace Windows.Drawing" Should Be "namespace System.Windows.Drawing"

On page 275, in the code sample,

Change:
"namespace Windows.Drawing"

To:
"namespace System.Windows.Drawing"

Page 282: Incorrect Use of Vertical Ellipses In Code Sample

On page 282, the code sample incorrectly uses vertical ellipses. Change these two instances to horizontal ellipses (...).

The code sample should appear as follows:
{
	...
	public bool this [ int index ]
	{
		get { ... }
		set { ... }
	}
	...
}
				

Page 292: "Declare a read-only property" Should Be "Declare a read-only indexer"

On page 292,

Change:
"Declare a read-only property"

To:
"Declare a read-only indexer"

Page 305: Error In 'important' Block

There is an error in the 'important' block on page 305.

Change:
"when a delegate is attached to it by using the -=operator."

To:
"when a delegate is attached to it by using the +=operator."

Page 307: "Ticker" Should Be "Ticker Class"

There is an error in step 2 on page 307.

Change:
"locate the Ticker in the"

To:
"locate the Ticker class in the"

Page 307: "Attach and Remove" Should Be "Attach and Detach"

There is an error in step 4 on page 307.

Change:
"delete the Attach and Remove methods"

To:
"delete the Attach and Detach methods"

Page 319: Error In Struct Vs. Class Box

On page 319, there is an error at the bottom of the Struct vs. Class box. The last line, "This is for efficiency reasons...", should be deleted entirely.

Page 323: Error In Code Sample

There is an error in the code sample at the bottom of page 323.

Change:
public static implicit operator int (Hour from)
{
     return from.value;
}
				
To:
public static implicit operator Hour (int from)
{
     return new Hour(from);
}
				

Page 326: Error In Quick Reference Code Sample

There is an error in the "Declare an operator" section on page 326.

Change:
"public static operator==(Hour lhs, Hour rhs)"

To:
"public static bool operator==(Hour lhs, Hour rhs)"

Page 332: Incorrect Image

The image on page 332 is incorrect. It should show a system Color Picker panel.

Page 333: Incorrect Image

The image on page 333 is incorrect. It should show an empty project window with the Bell Ringers logo background.

Page 337: Incorrect Image

The image on page 337 is incorrect. It should show a code overview window.

Page 347: Missing " In Code Sample

The code sample on page 347 is missing two " marks.

Change:
details = "Member name " + firstName.Text + "  + lastName.Text +
    from the tower at " + tower.Text;

To:
details = "Member name " + firstName.Text + " " + lastName.Text
    + " from the tower at " + tower.Text;


Page 414: Image Should Not Include Cancel Button

The image on page 414 is incorrect. It should not include a Cancel button.

Page 426: UserName Property Is Not Read-Only

There is an error at the end of Step 5 on page 426.

Change:
"You do not want the UserName property to appear because it is read-only."

To:
"You do not want the UserName property to appear because it is write-only."

Page 441: Duplicate Bullet In How To Box

The first and second bullet items at the top of page 441 are duplicates.

The second bullet should read:
"Retrieve data from a database and browse it graphically in Visual Studio.NET"

Page 487: "XSD" Tags Should Be Changed To "XS"

All "XSD" tags in the Step 15 code sample should be changed to "XS".

Page 512: Label7 "Label" Property Should Be "Text"

There is an error in the table at the bottom of page 512. The Properties for Label 7 should be changed from:

"Label
Height
Width
(ID)"

To:

"Text
Height
Width
(ID)"

Page 522: Typographical Error

There is a typographical error in the second Quick Reference item.

Change:
"definitoin"

To:
"definition"

Page 537: Correction In Step 7

On page 537, in step 7, change:
private void loginClick(object sender, System.EventArgs e)
{
				

To:
private void loginButtonClick(object sender, System.EventArgs e)
{
				

Page 538: Authentication Mode Should Be Windows

There is an error in Step 2 on page 538.

Change:
"Locate the <authentication> tag.  It will indicate that security has not
yet been implemented:
<authentication mode="None" />"
				

To:
"Locate the <authentication> tag.  It will indicate that Windows authentication
is being used:
<authentication mode="Windows" />"
				

Page 539: "important" Box Needs Additional Text

The "important" box on page 539 needs to have the following text added to the end:

"If you have installed and configured the QuickStart samples, the account used by ASP.NET will already have been granted access to the Northwind database. If you have not already installed the QuickStart samples you can grant access to the ASP.NET service using the steps shown below."

Page 565: Typographical Error

There is a typographical error in step 4 on page 565.

Change:
"Cick the Auto Format hyperlink ..."

To:
"Click the Auto Format hyperlink ..."

Microsoft Press is committed to providing informative and accurate books. All comments and corrections listed above are ready for inclusion in future printings of this book. If you have a later printing of this book, it may already contain most or all of the above corrections.

Modification Type:MinorLast Reviewed:7/2/2004
Keywords:kbdocerr kbdocfix kbinfo KB314220