The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".
The following errata were submitted by our customers and approved as valid errors by the author or editor.
| Version |
Location |
Description |
Submitted By |
Date Submitted |
Date Corrected |
| Printed |
Page xviii
Third paragraph, first line |
Deleted the word 2005 after Visual Studio.
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page xviii
"Under System Requirements," first bulleted item |
Changed this bullet to:
Windows XP with SP2 or higher, Windows Vista, Windows Server 2003
or Windows Server 2008 with IIS and MSMQ enabled
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page xviii
"Under System Requirements," third bulleted item |
After Microsoft Visual Studio, changed the word 2005 to 2008.
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page xviii
Under "System Requirements," fourth bulleted item |
Changed:
"This is preinstalled with Vista."
to
"This is installed with Visual Studio 2008."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page xviii
"Under System Requirements," fifth bulleted item |
Deleted the rest of this line from: "and .NET 3.0 Runtime Components (Windows SDK for .NET 3.0)"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page xviii
Under "System Requirements" |
Deleted the sixth bulleted item:
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
xviii
Third paragraph, first line |
Deleted the word 2005 after Visual Studio.
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
xviii
"Under System Requirements," first bulleted item |
Changed this bullet to:
Windows XP with SP2 or higher, Windows Vista, Windows Server 2003
or Windows Server 2008 with IIS and MSMQ enabled
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
xviii
"Under System Requirements," third bulleted item |
After Microsoft Visual Studio, changed the word 2005 to 2008.
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
xviii
Under "System Requirements," fourth bulleted item |
Changed:
"This is preinstalled with Vista."
to
"This is installed with Visual Studio 2008."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
xviii
"Under System Requirements," fifth bulleted item |
Deleted the rest of this line from: "and .NET 3.0 Runtime Components (Windows SDK for .NET 3.0)"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
xviii
Under "System Requirements" |
Deleted the sixth bulleted item.
|
Anonymous |
|
Aug 01, 2008 |
| Safari Books Online |
1-4
Example 1-4 |
Change
// HelloIndigo Project - Service.cs[ServiceContract(Namespace =
Note from the Author or Editor: Confirmed for the online version. Unsure if this is an issue in the latest printed version May 09.
|
Richard DesLonde |
Aug 20, 2009 |
|
| Safari Books Online |
1.6.1.2
step 4 |
The whole section mentioned below under step number 4 is wrong...
<behavior name="returnFaults">
<serviceDebug includeExceptionDetailInFaults="false"/>
<serviceMetadatahttpGetEnabled="true"/>
</behavior>
The book should have it as thus...
<behavior name="serviceBehavior">
<serviceDebug includeExceptionDetailInFaults="false"/>
<serviceMetadata httpGetEnabled="true"/>
</behavior>
Note from the Author or Editor: This is errata not in Safari online AND also in the printed revision from August 2008. This was something that was listed in the errata before the August reprint so we should check ALL errata submitted for that reprint to be sure that all fixes have been made.
|
Anonymous |
Sep 17, 2008 |
|
| Safari Books Online |
1.7.1.2
Example 1-20 |
if (hostA.State == CommunicationState.Faulted)
hostA.CloseAbort();
else
hostA.Close();
Should be:
if (hostA.State == CommunicationState.Faulted)
hostA.Abort();
else
hostA.Close();
Note from the Author or Editor: Confirmed as errata for Safari Online version of the book.
|
Baron Schaaf |
Jan 19, 2009 |
|
| Safari Books Online |
1.7.7.
Example 1-28 |
Missing open bracket
private void CloseProxy(ICommunicationObject proxy)
{
if (proxy != null)
if (proxy.State == CommunicationState.Faulted)
proxy.Abort();
else
proxy.Close();
}
}
should be
private void CloseProxy(ICommunicationObject proxy)
{
if (proxy != null)
{
if (proxy.State == CommunicationState.Faulted)
proxy.Abort();
else
proxy.Close();
}
}
Note from the Author or Editor: Confirme as errata in Safari Online.
Section 1.7.1.3
Example 1-24
|
Baron Schaaf |
Jan 19, 2009 |
|
| Printed |
Page 2
2nd paragraph |
The word 'principals' is used for 'principles.' There's another reported usage on pp 3.
Note from the Author or Editor: This was fixed in August 2008 reprint.
|
Anonymous |
Jul 09, 2008 |
Aug 01, 2008 |
| Printed |
Page 12
1st paragraph, sentence 2 |
Typo.
"with one anotehr to access"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
12
1st paragraph, sentence 2 |
Typo.
"with one anotehr to access"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 29
tip |
Typo.
"addressing makes is possible"
is => it
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
29
tip |
Typo.
"addressing makes is possible"
is => it
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 32
Under "Using the WCF Service Template," first paragraph, last line |
Deleted this sentence: "Since you will be adding the WCF Service to an executable project (the
host) the template will also generate some code for hosting the service."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 32
#4 |
"Open IHelloIndigoService.cs and..." now reads "Open HelloIndigoService.cs and..."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 32
#5 |
"Open Program.cs and add code to host the new Main() entry point..." now reads "Open Program.cs and add code to the Main() entry point..."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
32
Under "Using the WCF Service Template," first paragraph, last line |
Deleted this sentence: "Since you will be adding the WCF Service to an executable project (the
host) the template will also generate some code for hosting the service."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
32
#4 |
"Open IHelloIndigoService.cs and..." now reads "Open HelloIndigoService.cs and..."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
32
#5 |
"Open Program.cs and add code to host the new Main() entry point..." now reads "Open Program.cs and add code to the Main() entry point..."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 36
#5 |
Paragraph ends with "select IMetadataExchange" -- there is no way to select this value, the user must type it.
Note from the Author or Editor: From the August 2008 Reprint, Page 36, #6:
Change: "select IMetadataExchange"
To: "type IMetadataExchange"
|
Anonymous |
Sep 14, 2008 |
May 01, 2009 |
| Printed |
Page 38
Creating a WCF Service Library, #2 |
The instructions seem to be really messed up:
====================
Rename Service1.cs and HelloIndigoService.cs and Service1.cs to IHelloIndigoService.cs and HelloIndigoService.cs, respectively.
I assmume that the following is what is intended:
====================
Rename IService1.cs and Service1.cs to IHelloIndigoService.cs and HelloIndigoService.cs, respectively.
Note from the Author or Editor: Page 38, #2 reads:
"Rename Service1.cs and HelloIndigoService.cs and IService1.cs to IHelloIndigoService.cs and HelloIndigoService.cs, respectively."
A previous errata update was obviously poorly applied. It should read:
"Rename Service1.cs and IService1.cs to HelloIndigoService.cs and IHelloIndigoService.cs, respectively."
|
Anonymous |
Jul 21, 2009 |
|
| Printed |
Page 39
#8 |
In the code block, "host=..." host is now in all lower case.
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
39
#8 |
In the code block, "host=..." host is now in all lower case.
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 40
#2, third through fifth line |
Current Errata Item:
====================
- Printed
- Page 40 #2, third through fifth line
- Right-click Reference.svcmap and select “Include in
Project.” Right-click localhost.map beneath Service Referenceslocalhost and select “Exclude from Project.”
now reads:
Right-click serviceproxy.cs and select “Include in Project.” Right-click localhostReference.svcmap beneath
Service Referenceslocalhost and select “Exclude from Project.”
============================
Should Read... (note that
Note from the Author or Editor: #2, line 4
"localhostreference.svcmap" should be
"Reference.svcmap"
|
Anonymous |
Jul 21, 2009 |
|
| Printed |
Page 40
#2, second paragraph. |
From #2, second paragraph:
=============
Note from the Author or Editor: Confirmed error in the 2009 reprint.
using (HelloIndigoServiceClient proxy = new HelloIndigoServiceClient( ))
should be changed to
HelloIndigoServiceClient proxy = new HelloIndigoServiceClient( );
|
Anonymous |
Jul 21, 2009 |
|
| Printed |
Page 40
#2, third through fifth line |
Right-click Reference.svcmap and select “Include in
Project.” Right-click localhost.map beneath Service Referenceslocalhost and select
“Exclude from Project.”
now reads:
Right-click serviceproxy.cs and select “Include in Project.” Right-click localhostReference.svcmap beneath
Service Referenceslocalhost and select “Exclude from Project.”
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
40
#2, third through fifth line |
Right-click serviceproxy.cs and select “Include in
Project.” Right-click localhost.map beneath Service References and select
“Exclude from Project.”
now reads:
Right-click serviceproxy.cs and select “Include in Project.” Right-click localhostReference.svcmap beneath
Service Referenceslocalhost and select “Exclude from Project.”
|
Anonymous |
|
Aug 01, 2008 |
| Safari Books Online |
68
Code sample |
Code sample in Safari Books Online, section 1.7. Exposing Multiple Service Endpoints contains following code snippet:
if (hostA.State == CommunicationState.Faulted)
hostA.CloseAbort();
else
hostA.Close();
While PDF of chapter 1 (http://www.thatindigogirl.com/ct.ashx?id=16e675d7-3c16-4e0a-87c9-c330d88d985f&url=http%3a%2f%2fwww.thatindigogirl.com%2fdownloads%2fLearningWCFChapter01VS2008.pdf) contains the correct code:
if (hostA.State == CommunicationState.Faulted)
hostA.Abort( );
else
hostA.Close();
Note from the Author or Editor: Fixed in the August 2008 reprint. THis reader may have copy of the original print.
|
Brendan Grant |
Mar 16, 2009 |
Aug 01, 2008 |
| Printed |
Page 91
Under item number six, last line |
Changed:
"localhost.map"
to:
"localhost"
Changed:
"localhost.cs"
to:
"Reference.cs"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 91
Under item number eight, second line |
Changed:
"localhost.map"
to:
"localhost"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 91
Under item number eight, second-third lines |
Changed to:
"Now run the Host without debugging and generate a new proxy for WinClient."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 91
Under item number eight, fourth-fifth lines |
Changed:
"and accepting localhost as the reference name"
to:
"and setting the namespace to localhost."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 91
Third line from the bottom |
Changed:
"localhost.map"
to:
"localhost"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
91
Under item number six, last line |
Changed:
"localhost.map"
to:
"localhost"
Changed:
"localhost.cs"
to:
"Reference.cs"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
91
Under item number eight, second line |
Changed:
"localhost.map"
to:
"localhost"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
91
Under item number eight, second-third lines |
Changed to:
"Now run the Host without debugging and generate a new proxy for WinClient."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
91
Under item number eight, fourth-fifth lines |
Changed:
"and accepting localhost as the reference name"
to:
"and setting the namespace to localhost."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
91
Third line from the bottom |
Changed:
"localhost.map"
to:
"localhost"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 108
Note at the bottom of the page, third-fourth lines |
Changed:
"introduce" incompatibilities
to:
"cause" incompatibilities
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
108
Note at the bottom of the page, third-fourth lines |
Changed:
"introduce" incompatibilities
to:
"cause" incompatibilities
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 109
Under "Customizing data contract serialization," item number 2, first line |
Changed:
"run it once again."
to:
"run it without debugging."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
109
Under "Customizing data contract serialization," item number 2, first line |
Changed:
"run it once again."
to:
"run it without debugging."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 110
Under "Consuming data contracts at the client," item number 1, third line |
Changed:
"the reference name"
to:
"the namespace"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
110
Under "Consuming data contracts at the client," item number 1, third line |
Changed:
"the reference name"
to:
"the namespace"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 120
Note at top of page, second line |
Changed:
"ObservableCollection"
to:
"CollectionDataContract"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
120
Note at top of page, second line |
Changed:
"ObservableCollection"
to:
"CollectionDataContract"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 125
In the middle of the page, the paragraph that starts with "When this behavior..." |
After code block and before that paragraph inserted the following:
This behavior can also be set declaratively on the service type:
[ServiceBehavior(IgnoreExtensionDataObject=true)]
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 125
In the middle of the page, the paragraph that starts with "When this behavior...," fourth line |
Chaned
"from being processed"
to
"from being processed at the service."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 125
Note in the middle of the page, first line |
Changed:
"this feature"
to:
"IExtensibleDataObject"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
125
In the middle of the page, the paragraph that starts with "When this behavior..." |
After code block and before that paragraph inserted the following:
This behavior can also be set declaratively on the service type:
[ServiceBehavior(IgnoreExtensionDataObject=true)]
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
125
In the middle of the page, the paragraph that starts with "When this behavior...," fourth line |
Chaned
"from being processed"
to
"from being processed at the service."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
125
Note in the middle of the page, first line |
Changed:
"this feature"
to:
"IExtensibleDataObject"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 132
Under "Using proxies and message contracts," first item, fourth line |
Changed:
"reference name as localhost."
to:
"namespace as localhost."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
132
Under "Using proxies and message contracts," first item, fourth line |
Changed:
"reference name as localhost."
to:
"namespace as localhost."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 135
Example 2-37 code, second to last line |
Changed:
</SaveGigRequest>
to
</SaveGigResponse>
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
135
Example 2-37 code, second to last line |
Changed:
</SaveGigRequest>
to
</SaveGigResponse>
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 138
Thirteen lines from bottom |
Deleted the word "a" after "header is"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
138
Thirteen lines from bottom |
Deleted the word "a" after "header is"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 140
3rd paragraph last sentence |
In the last sentence in the third paragraph it says "...you can you serialize it...". The second "you"
was removed.
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
143
3rd paragraph last sentence |
In the last sentence in the third paragraph it says "...you can you serialize it...". The second "you"
was removed.
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 171
3rd paragraph |
The following text is incorrect:
"To do this, right-click the project node and select Add Web Reference."
Correction:
"To do this, right-click the project node and select Add Service Reference. From the Add Service Reference dialog click the Advanced button and then click the Add Web Reference button."
Reason:
Instructions to reach the Add Web Reference dialog have changed for Visual Studio 2008. The context menu Add Web Reference no longer exists. This function is now provided through the Add Service Reference dialog.
|
Michele Leroux Bustamante
|
Mar 02, 2009 |
May 01, 2009 |
| Printed |
Page 173
Under "Adding a service reference for the non-legacy client," first item, second line |
Changed:
"reference name"
to:
"namespace"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
173
Under "Adding a service reference for the non-legacy client," first item, second line |
Changed:
"reference name"
to:
"namespace"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 185
In number 7. |
Sentence two read:
"What is it missing is the configuration..."
and now reads:
"What it is missing is the configuration..."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 186
Note at top of page, |
Changed the last sentence to read:
"With Visual Studio 2008, Add Service Reference also supports this using Advanced options."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
186
Note at top of page, |
Changed the last sentence to read:
"With Visual Studio 2008, Add Service Reference also supports this using Advanced options."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
188
In number 7. |
Sentence two read:
"What is it missing is the configuration..."
and now reads:
"What it is missing is the configuration..."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 202
Note at bottom of page, fifth line |
Changed:
"they are ignored."
to:
"they are ignored when the contract is used as a callback contract."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
202
Note at bottom of page, fifth line |
Changed:
"they are ignored."
to:
"they are ignored when the contract is used as a callback contract."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 204
Under "Implementing the callback contract," first item, second line |
Changed:
"reference name"
to:
"namespace"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 204
Example 3-20, bolded the first line of code |
"using System.Threading;"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
204
Under "Implementing the callback contract," first item, second line |
Changed:
"reference name"
to:
"namespace"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
204
Example 3-20, bolded the first line of code |
"using System.Threading;"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 211
Example 3-26, tenth line |
Changed:
"subscriber"
to:
"callback"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 211
Example 3-26, deleted the line of code (fourth and fifth from bottom of code)(before "When something triggers..." |
IPublisherEvents callback = OperationContext.Current.GetCallbackChannel<IPublisherEvents>( );
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 211
Example 3-26, third line from bottom of code |
Changed:
"callback"
to:
"id"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 211
last paragraph |
On lab step 2 in the second sentence there is a word "teh" which now reads "the".
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
211
Example 3-26, tenth line |
Changed:
"subscriber"
to:
"callback"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
211
Example 3-26, deleted the line of code (fourth and fifth from bottom of code)(before "When something triggers..." |
IPublisherEvents callback = OperationContext.Current.GetCallbackChannel<IPublisherEvents>( );
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
211
Example 3-26, third line from bottom of code |
Changed:
"callback"
to:
"id"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
211
last paragraph |
On lab step 2 in the second sentence there is a word "teh" which now reads "the".
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 218
Item number five, first line |
Changed:
"fileUploadDir"
to:
"mediaPath"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 218
Item number five, third line (code) |
Changed:
"fileUploadDir"
to:
"mediaPath"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 218
Under "Streaming from the client," first item, second and third lines |
Changed:
"reference as localhost"
to:
"namespace as localhost"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
218
Item number five, first line |
Changed:
"fileUploadDir"
to:
"mediaPath"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
218
Item number five, third line (code) |
Changed:
"fileUploadDir"
to:
"mediaPath"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
218
Under "Streaming from the client," first item, second and third lines |
Changed:
"reference as localhost"
to:
"namespace as localhost"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 240
Top of page, under "Closing the ServiceHost," first paragraph |
Added the following to end of this paragraph:
Although a rare occurence, it is possible for the ServiceHost to be put into a faulted state. For example,
if there are errors in the service model configuration. If the ServiceHost State property is set to
CommunicationState.Faulted, when Close() is called an exception will be thrown. For this reason, it is best
to check the State property of the ServiceHost instance and call Abort() if it is in a faulted state. This
technique was illustrated in Chapter 1
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
240
Top of page, under "Closing the ServiceHost," first paragraph |
Added the following to end of this paragraph:
Although a rare occurence, it is possible for the ServiceHost to be put into a faulted state. For example,
if there are errors in the service model configuration. If the ServiceHost State property is set to
CommunicationState.Faulted, when Close() is called an exception will be thrown. For this reason, it is best
to check the State property of the ServiceHost instance and call Abort() if it is in a faulted state. This
technique was illustrated in Chapter 1
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 249
Bottom of page, under the section "Calling services on a non-UI thread," second and third lines |
Changed:
"reference name"
to:
"namespace"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
249
Bottom of page, under the section "Calling services on a non-UI thread," second and third lines |
Changed:
"reference name"
to:
"namespace"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 266
1st numbered paragraph under 'Creating a Windows service installer' |
Reads 1. Go to the WindowsServiceHost project...
Should be 1. Go to the MessagingServiceHost project...
Note from the Author or Editor: In the August 2008 reprint, this error is on Page 267, step 2.
Change this: "Go to the WindowsServiceHost project..."
To this: "Go to the MessagingServiceHost project..."
|
Anonymous |
Oct 19, 2008 |
May 01, 2009 |
| Printed |
Page 281
Under "IIS 7.0 and Windows Activation Service," first line |
Changed:
Windows "Longhorn" Server
to:
Windows Server 2008
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 281
Under "IIS 7.0 and Windows Activation Service," eigth line |
After the word "deployments," deleted the rest of the paragraph starting with:
Thus, until Windows “Longhorn” Server is released, it has limited value...will pay off for Longhorn.
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
281
Under "IIS 7.0 and Windows Activation Service," first line |
Changed:
Windows "Longhorn" Server
to:
Windows Server 2008
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
281
Under "IIS 7.0 and Windows Activation Service," eigth line |
After the word "deployments," deleted the rest of the paragraph starting with:
Thus, until Windows “Longhorn” Server is released, it has limited value...will pay off for Longhorn.
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 283
Under "Installing IIS 7.0, WAS, and WCF Communications," first sentence |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
283
Under "Installing IIS 7.0, WAS, and WCF Communications," first sentence |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 289
Under "Choosing the Right Hosting Environment," first paragraph, last sentence: |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 289
Under "Choosing the Right Hosting Environment," second paragraph, second bulleted item |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 289
Under "Choosing the Right Hosting Environment," table 4-4, last item |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
289
Under "Choosing the Right Hosting Environment," first paragraph, last sentence: |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
289
Under "Choosing the Right Hosting Environment," second paragraph, second bulleted item |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
289
Under "Choosing the Right Hosting Environment," table 4-4, last item |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 304
Note that starts with "Reliable sessions and secure sessions..." |
Changed this section:
"also provide their own timeout...always be used for the session."
to:
"also have timeout properties but they do not control the timeout of the overall session. These properties
are described in later chapters."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
304
Note that starts with "Reliable sessions and secure sessions..." |
Changed this section:
"also provide their own timeout...always be used for the session."
to:
"also have timeout properties but they do not control the timeout of the overall session. These properties
are described in later chapters."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 319
3rd paragraph |
Reads ...as shown in the Single instancing example of Figure 5-19.
Should be ...as shown in the Single instancing example of Figure 5-18.
Note from the Author or Editor: This is correct in the August 2008 reprint.
|
Anonymous |
Oct 19, 2008 |
Aug 01, 2008 |
| Printed |
Page 321
Right before the section "Custom Synchronization," added this paragraph |
"Although a new service instance is allocated for each request with PerCall services, Multiple concurrency
mode is still useful in the case where there is a session to increase throughput for multi-threaded clients.
That's because the lock acquired when the first request is received from a particular client proxy is
actually on the context, not on the service object. When a session is present, this lock prevents more than
one thread from entering the same session - which means the TCP socket, the named pipe, or the reliable or
secure session."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 321
In the second paragraph after Figure 5-18, third line |
Changed:
"Figure 5-19"
to:
"Figure 5-18"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
321
Right before the section "Custom Synchronization," added this paragraph |
"Although a new service instance is allocated for each request with PerCall services, Multiple concurrency
mode is still useful in the case where there is a session to increase throughput for multi-threaded clients.
That's because the lock acquired when the first request is received from a particular client proxy is
actually on the context, not on the service object. When a session is present, this lock prevents more than
one thread from entering the same session - which means the TCP socket, the named pipe, or the reliable or
secure session."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
321
In the second paragraph after Figure 5-18, third line |
Changed:
"Figure 5-19"
to:
"Figure 5-18"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 325
Under item three, third line |
Changed:
"2005"
to:
"2008"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
325
Under item three, third line |
Changed:
"2005"
to:
"2008"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 332
Under "Throttling PerCall Services," sixth line |
Changed:
"serivce"
to:
"service"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
332
Under "Throttling PerCall Services," sixth line |
Changed:
"serivce"
to:
"service"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 337
Added a tip before "Summary" |
"The release of the .NET Framework 3.5 includes a new feature for WCF - Durable Services. This feature makes
it possible to have an application session for a WCF service persist to a database between calls and be
restored on subsequent calls. This feature relies on the Windows Workflow Foundation persistence services.
This feature does not preserve transport sessions, so the client must still recreate the proxy if a
particular machine is no longer available, or if the session is terminated for some other reason."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
337
Added a tip before "Summary" |
"The release of the .NET Framework 3.5 includes a new feature for WCF - Durable Services. This feature makes
it possible to have an application session for a WCF service persist to a database between calls and be
restored on subsequent calls. This feature relies on the Windows Workflow Foundation persistence services.
This feature does not preserve transport sessions, so the client must still recreate the proxy if a
particular machine is no longer available, or if the session is terminated for some other reason."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 341
Item "Inactivity Timeout" |
Replaced paragraph with this:
"This is a TimeSpan property that controls the duration of the reliable session including channel layer
activity. If no messages, including infrastructure messages such as reliable session acknowledgements, are
transmitted during this elapsed time the session is faulted. The default value is 00:10:00 (or 10 minutes)."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
341
Item "Inactivity Timeout" |
Replaced paragraph with this:
"This is a TimeSpan property that controls the duration of the reliable session including channel layer
activity. If no messages, including infrastructure messages such as reliable session acknowledgements, are
transmitted during this elapsed time the session is faulted. The default value is 00:10:00 (or 10 minutes)."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 346
Under "Session lifetime," first code block |
Replaced code block with:
<wsHttpBinding>
<binding name="wsHttpRM" receiveTimeout="00:00:05">
<reliableSession enabled="true" ordered="true" />
</binding>
</wsHttpBinding>
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
346
Under "Session lifetime," first code block |
Replaced code block with:
<wsHttpBinding>
<binding name="wsHttpRM" receiveTimeout="00:00:05">
<reliableSession enabled="true" ordered="true" />
</binding>
</wsHttpBinding>
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 347
First tip |
Replaced first tip with:
"It simplifies matters greatly if you use the receive timeout setting to control session lifetime."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
347
First tip |
Replaced first tip with:
"It simplifies matters greatly if you use the receive timeout setting to control session lifetime."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 384
Under "MSMQ Overview," fourth and fifth lines |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
384
Under "MSMQ Overview," fourth and fifth lines |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 399
First paragraph after Figure 6-19, second and third lines |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
399
First paragraph after Figure 6-19, second and third lines |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 407
Last paragraph, second and third lines from bottom of page |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
407
Last paragraph, second and third lines from bottom of page |
Changed:
"Windows Longhorn Server"
to:
"Windows Server 2008"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 427
Figure 7-4 |
Changed:
"DALC"
to
"Data Access"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
427
Figure 7-4 |
Changed:
"DALC"
to
"Data Access"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 431
item 2 |
Title: Learning WCF
Section: Lab for Authenticating and Authorizing Windows Credentials
Edition: (Printed 8/08)
Page:431
Section: Item 2
Textual Error:
"Not that the identities of the *host,* thread, and security context all
match the credentials passed from the client application"
Console Output:
UserOperation requested at 2/27/2009 11:45:27 AM
*Host* identity is GEOMAR\Mark
Security context identity is GEOMAR\TestUser
Security context Windows identity GEOMAR\TestUser
ThreadIdentity is GEOMAR\TestUser
When following the Lab and also checking the Completed Labs, the host
identity does not reflect the credentials passed from the client. The host
identity appears to reflect the identity of the service itself.
Note from the Author or Editor: Please change this text: "Note that the identities of the host, thread, and security context all match the credentials passed from the client application."
to this: "Note that the identities of the thread and security context both match the credentials passed from the client application, while the host identity matches the account you used to log in to the machine."
|
Anonymous |
Mar 03, 2009 |
May 01, 2009 |
| Printed |
Page 437
Figure 7-6 |
Changed:
"DALC"
to
"Data Access"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
437
Figure 7-6 |
Changed:
"DALC"
to
"Data Access"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 439
Under "Generating the client proxy," first item, third line |
Changed:
"reference name localhost."
to:
"namespace as localhost."
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
439
Under "Generating the client proxy," first item, third line |
Changed:
"reference name localhost."
to:
"namespace as localhost."
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 455
Figure 7-8 |
Changed:
"DALC"
to
"Data Access"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
455
Figure 7-8 |
Changed:
"DALC"
to
"Data Access"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 456
Figure 7-9 |
Changed:
"DALC"
to
"Data Access"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
456
Figure 7-9 |
Changed:
"DALC"
to
"Data Access"
|
Anonymous |
|
Aug 01, 2008 |
| Printed |
Page 535
Item number one, first line |
Changed:
"2005"
to:
"2008"
|
Anonymous |
|
Aug 01, 2008 |
| Other Digital Version |
535
Item number one, first line |
Changed:
"2005"
to:
"2008"
|
Anonymous |
|
Aug 01, 2008 |