Topic: ASP.NET

Professional ASP.NET 1.0, Special Edition (0764543962) cover image

Professional ASP.NET 1.0, Special Edition

Richard Anderson, Brian Francis, Alex Homer, Rob Howard, Dave Sussman, Karli Watson
ISBN: 978-0-7645-4396-8
Paperback
1392 pages
February 2002
This title is out-of-print and not currently available for purchase from this site.

Do you think you've discovered an error in this book? Please check the list of errata below to see if we've already addressed the error. If not, please submit the error via our Errata Form. We will attempt to verify your error; if you're right, we will post a correction below.

ChapterPageDetailsDatePrint Run
1 24 Error in Code

In the block, runat="Server" appears twice. It is, of course, only required once.

24-Jun-02 1
3 90 Repeated Double Quotes in Code

In the final code sample on the page, the double quotes have been repeated in error. The code should be:

Sub New()
  _firstName = ""
  _lastName = ""
End Sub
24-Jul-02 1
3 91 Repeated Double Quotes in Code

In the second and third code blocks on the page, the double quotes have been repeated in error. The code should be:

coolDude.FirstName = "Vince"
coolDude.LastName = "Patel"

Dim coolDude as New Person("Vince","Patel")
24-Jul-02 1
3 94 Repeated Double Quotes in Code

In the second code sample on the page, the double quotes have been repeated in error. The code should be:

Public Function FullName() As String Implements IPerson.FullName
  Return _firstName & " " & _lastName
End Function
24-Jul-02 1
3 95 Repeated Double Quotes in Code

In the second and third code sample on the page, the double quotes have been repeated in error. The code should be:

Dim ConnectionTimes() As Date = {"10:30", "11:30", "12:00", "06:00"}

name &= " Sussman"
24-Jul-02 1
3 98 Try should be Catch

The second sentence of the first paragraph reads: "You should put the most specific Try blocks first, and ..." but should read "You should put the most specific Catch blocks first, and ..."

22-Jul-02 1
4 144 Layout of HTML Tags

The locations and ordering of the HTML tags in the code example spanning pages 144 and 145 is incorrect. The layout should be as follows (ASP.NET code omitted for brevity):

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<script language="VB" runat="server">

   ...

</script>

<html>

<head>
</head>

<body>

   <form runat="server">

      ...

   </form>

</body>

</html>
29-Nov-02 1
4 161 Missing Closing Bracket

In the first code block (and second block on Page 62) there is a missing closing bracket. The code should appear as:

If Len(Request.Params("ProductCode")) > 0 Then
24-Jun-02 1
4 166 Code Correction - Single Quotes

A correction is required to the ASP:Button code within the ItemTemplate element. The contents of the Text attribute should be within single quotes due to the fact its contents contain double quotes.

<asp:button id="button" Text='<%# DataBinder.Eval( Container.DataItem, "Initials" ) %>' runat="server" />
01-Jul-02 1
4 192 Incorrect time quoted in text

In the second paragraph the text in parenthesis should read (it's now 15:49:14) so that it matches the screenshot below it.

25-Sep-02 1
6 247 Event Properties Correction

In the table, the Event Properties for CheckBox and RadioButton should be OnCheckedChanged.

24-Jun-02 1
6 281 Incorrect Screenshot

Unfortunately the screenshot was re-taken just before printing, and the wrong value used in the DataTextFormatString textbox. It should be "Bid: {0:C}" not "Bid: [0:C]". This error was corrected in the April 2002 reprint.

24-Jun-02 1
7 313 value attribute

The last line of the last but one paragraph should read "...doesn't set the value attribute of each one".

11-Feb-03 1
8 390 New Set-up Routine

After publication, an automated set-up routine was added to the downloadable samples. The file connect-strings.ascx is different in this download, and does not need to be edited to specify the connection strings. Instead, they are specified in the appSettings section of the web.config file in the root folder of the samples. The set-up routine expects to find an instance of MSDE named .NetSDK (as provided with the .NET SDK). You can edit the connection strings in the appSettings section of web.config to specify a different database server or MSDE instance if required.

13-May-02 1
8 395 SingleResult bullet point

In the SingleResult bullet point, the second sentance should read "Alternatively, use the ExecuteScalar method of the Command Object".

31-Jul-02 1
11 549 InferXMLSchema

Uses a schema that is referenced by a TextReader...

Should read:

Takes an XML document provided in a TextReader.... This error was corrected in the April 2002 reprint.

24-Jun-02 1
11 571 Method Name Correction

In the first code block, the method used on the objXTReader object should be ReadString():

objXTReader.ReadString()
24-Jun-02 1
12 602 Class1.vb Code

In the second code block, two lines are in the wrong order. "MyConnection = ..." must appear before "MyCommand = ...". This was corrected in the April 2002 reprint.

24-Jun-02 1
12 614 Incorrect Namespace name

The first line of the Cache Overview section should read: Cache is an instance of the Cache class found in the namespace System.Web.Caching.

24-Jun-02 1
13 698 The following passage should be included on this page

Note, an important but subtle change in the final released version of ASP.NET is the Windows identity that the ASP.NET worker process runs as. In previous beta versions it was the ???System??? account. The final version uses a special Windows account created when the .NET Framework is installed: aspnet. For more details on the implications of these changes please see the chapter on security. This of course is still configurable using the username/password attributes of the settings. This error was corrected in the April 2002 reprint.

24-Jun-02 1
13 699 userName change

userName="SYSTEM"

should be:

userName="machine" This error was corrected in the April 2002 reprint.

24-Jun-02 1
13 700 userName and password change

userName="SYSTEM"

should be:

userName="machine" This error was corrected in the April 2002 reprint.

24-Jun-02 1
13 700 userName and password change

userName=""
password=""

should be:

userName="machine"
password="autogenerate" This error was corrected in the April 2002 reprint.

24-Jun-02 1
13 703 userName and password change

userName=""
password=""

should be:

userName="machine"
password="autogenerate" This error was corrected in the April 2002 reprint.

24-Jun-02 1
13 705 Setting the Identity of the Process

'By default it is the System account'

should read:

'By default, it is a restricted Windows account called ASPNET.'

Also:

'by using these settings we can instruct the process to execute under another Windows identity.'

should read:

'by using these settings we can instruct the process to execute under another Windows identity, or the System account.' This error was corrected in the April 2002 reprint

24-Jun-02 1
13 706 Identity change

In top paragraph of the page: 'we see that the process is executing as user ASPNET_WP rather than SYSTEM.' should read: 'we see that the process is executing as user ASPNET_WP rather than aspnet.' This error was corrected in the April 2002 reprint.

24-Jun-02 1
13 706 Missing username/password info

The following note should be included immediately before the 'Logging Process Events': To run as the system account, as previous Beta versions of ASP.NET did, we simply change the username/password to the following values: userName="System" password="AutoGenerate" This error was corrected in the April 2002 reprint.

24-Jun-02 1
14 730 Impersonation

In the second set of bullets, first two should be replaced by this one bullet: "The request is made under the context of the special ASPNET process account, irrespective of whether anonymous access is enabled or not in IIS" ...[when impersonation is not enabled].

13-May-02 1
15 784 IEnumerator should read IEnumerable

last paragraph: in the sentence "All arrays implement the IEnumerator interface..." replace IEnumerator with IEnumerable.

24-Jun-02 1
15 807 HashTable Object behaviour

The default behaviour of the HashTable object has changed from Beta 2, and it will now throw an exception if the Key object is considered to match an existing Key object that is in use for an existing item in a HashTable. However, the remainder of the text concerning the behavior of the HashTable object is correct.

13-May-02 1
15 820 Second bit array

last paragraph before code section: should read "...setting bits 0, 1 and 6..."

13-May-02 1
15 827 Missing continuation character

The top code listing on page 827 is missing the continuation character "_" at the end of the first line of the GetEnumerator() method. The code should be:

Public Function GetEnumerator() As IEnumerator _
    Implements IEnumerable.GetEnumerator

  GetEnumerator = _products.Values.GetEnumerator()
End Function
27-Nov-02 1
22 1198 Incorrect Screenshot

The wrong screenshot was included at the foot of the page (Note: this has been corrected in reprints from April 2002).

24-Jun-02 1
23 1251 Corrected code

The C# code at the bottom of the page should be:

[StructLayout(LayoutKind.Sequential)]
  public class SystemTime
  {
    public short wYear;
    public short wMonth;
    public short wDayOfWeek;
    public short wDay;
    public short wHour;
    public short wMinute;
    public short wSecond;
    public short wMilliseconds;
  }

  public class API
  {
    [DllImport("Kernel32.dll")]
    public static extern void GetSystemTime(
      [Out, MarshalAs(UnmanagedType.LPStruct)]
      SystemTime sysTime);
  }
24-Jun-02 1
23 1252 Corrected Code

The first code section should be:

SystemTime st = new SystemTime();
  API.GetSystemTime(st);
  Response.Write("Month = " + st.wMonth);
13-May-02 1