Index

Symbols

!= (inequality operator)
comparing pointers with, Solution
overriding, Discussion, Discussion
Set class, Solution, Discussion
# (comment character), Solution
#define preprocessor directive, Solution, Discussion
#elif preprocessor directive, Solution, Discussion
#if preprocessor directive, Solution, Discussion
#undef preprocessor directive, Solution, Discussion
& (bitwise AND operator), Discussion, Discussion, Discussion, Solution, Discussion
' (single quotes), on command line, Discussion
( ) (cast operator), Problem
( ) (parentheses)
balanced, Problem
in equations, Solution
* (wildcard character), Discussion
*= (assignment operator), Problem, See Also
+= (assignment operator), Problem, See Also
- (hyphen)
in regular expression patterns, Solution
on command line, Discussion
-= (assignment operator), Problem, See Also
.dmp file extension, Problem
.NET web services, Windows NT 4.0 not supporting, What You Need to Use This Book
/ (slash), on command line, Discussion
// (comment characters), Solution
//... (omitted C# code in examples), Conventions Used in This Book
/= (assignment operator), Problem, See Also
/checked compiler switch, Discussion
/main compiler switch, Discussion
; (semicolon), on command line, Discussion
< (less than operator), Solution
<!--...--> (omitted XML code in examples), Conventions Used in This Book
<= (less than or equal operator), Solution
<> (angle brackets), balanced, Problem
== (equality operator)
comparing pointers with, Solution
comparing strings with, Discussion
overriding, Discussion, Discussion
Set class, Solution, Discussion
> (greater than operator), Solution
>= (greater than or equal operator), Solution
?: (conditional operator), Problem, See Also
?: (ternary operator), Discussion
?? (logical AND operator), Problem, See Also
[] (square brackets), balanced, Problem
(backslash)
in regular expression patterns, Solution
on command line, Discussion
(linefeed character), Discussion
(linefeed character, Macintosh), Discussion
^ (bitwise XOR operator), Discussion, Solution, Discussion
^ (caret), on command line, Discussion
{} (braces), balanced, Problem
| (bitwise OR operator), Discussion, Discussion, Discussion, Solution, Discussion
|| (logical OR operator), Problem, See Also
~ (bitwise complement operator), Problem
“Safe Thread Synchronization” (Richter), Discussion
“” (double quotes), on command line, Discussion

A

abstract base classes, implementing polymorphism with, Problem, Discussion
AccessException exception, Solution
Acos method, Math class, Solution
adapter design pattern, Solution, Discussion, See Also
Add method
MultiMap class, Solution, Discussion
Set class, Solution
SortedList class, Discussion, See Also
AddNode method
BinaryTree class, Solution
BinaryTreeNode class, Solution, Discussion
NTreeNode class, Solution, Discussion
AddProxyInfoToRequest method, Solution
AddRoot method, NTree class, Solution, Discussion
AddUniqueNode method, BinaryTreeNode class, Solution, Discussion
AllFlags privilege, Discussion
AllocateDataSlot method, Thread class, Solution, Discussion
AllocateNamedDataSlot method, Thread class, Solution, Discussion
Allocation Profiler, See Also
AmbiguousMatchException exception, Solution
angle brackets (<>), balanced, Problem
angles
calculating one angle of triangle, Problem
converting degrees to radians, Problem
converting radians to degrees, Problem
AppDomainUnloadedException exception, Solution
Append method, StringBuilder class, Discussion
AppendText method
File class, Discussion
FileInfo class, Discussion
AppendText method, FileInfo class, Discussion
AppEvents class, Solution
application
command-line parameters for, Problem, See Also
conditionally compiling blocks of, Problem, See Also
data for, storing securely, Problem, See Also
event logs for (see event logs)
performance counters for, Problem, See Also, Problem, See Also
persisting collections between sessions, Problem, See Also
processes not responding for, determining, Problem, Discussion
production, trace output from, Problem, Discussion
selective debugging and tracing for, Problem, See Also
versioning with multiple entry points, Problem, See Also
versions of modules, comparing, Problem, See Also
application configuration file
selecting components to trace in, Solution, Discussion
selecting level of tracing in, Solution, Discussion
turning on tracing with, Solution, Discussion
ApplicationException exception, Discussion, Solution
Applied Microsoft .NET Framework Programming (Richter), See Also
AppSpecificSwitch class, Solution
AppSpecificSwitchLevel enumeration, Solution
arccosine function, Discussion
arcsine function, Discussion
arctangent function, Discussion
ArgumentException exception, Discussion, Discussion, Exception Handling, Solution, Discussion, Solution, Discussion
ArgumentNullException exception, Discussion, Discussion, Exception Handling, Solution, Discussion, Discussion, Solution, Discussion, Discussion
ArgumentOutOfRangeException exception, Solution, Exception Handling, Solution, Discussion, Solution
ArithmeticException exception, Solution
Array class
BinarySearch method, Problem, See Also
Copy method, Discussion
Reverse method, Solution
Sort method, Problem, See Also
ArrayList class, Collections
(see also collections)
as values in Hashtable, Problem, See Also
BinarySearch method, Problem, See Also, Problem, Problem, Discussion
Contains method, Problem
controlling additions to, through attributes, Problem, See Also
counting occurrences of an object type in, Problem, See Also
Hashtable keys or values stored in, Solution
maintaining sort when adding or modifying elements, Problem, See Also
persisting between application sessions, Problem, See Also
retrieving all instances of an object type, Problem, See Also
snapshot of, Problem
Sort method, Problem, See Also
ArrayListEx class, Solution, Solution, Discussion
arrays, Collections
byte arrays, breaking large numbers into, Problem
displaying values as a delimited string, Problem
exceptions for, Discussion
fixed-size, Collections, Problem
inserting elements into, Problem, See Also
jagged, Collections
navigating with pointer, Solution
reversing, Problem
multidimensional, Collections, Solution
navigating with pointers, Problem, See Also
of objects, nested, Problem, See Also
of pointers, Problem, See Also
of pointers to unknown types, Problem, See Also
pointers to, manipulating, Problem
removing elements from, Problem, See Also
returning pointers to an element in, Problem, See Also
reversing order of elements in, Problem, See Also
searching class or structure objects in, Problem, See Also
snapshots of, Problem
sorting class or structure objects in, Problem, See Also
StackTrace class acting as, Problem, See Also
swapping two elements in, Problem
two-dimensional, reversing, Problem
types of, Collections
ArrayTypeMismatchException exception, Discussion, Solution
ArrayUtilities class, Solution
as operator
casting with, Problem, See Also
when to use, Problem
ASCII values, byte array of, converting to a string, Solution
ASCIIEncoding class
GetBytes method, Solution
GetString method, Discussion
Asin method, Match class, Solution
ASP.NET cache, Solution
ASP.NET, Windows NT 4.0 not supporting, What You Need to Use This Book
ASPNET user account, performance counters prevented by, Discussion, Discussion
assemblies
access to types in, controlling, Problem, See Also
assemblies imported by, listing, Problem, See Also
attack surface of, minimizing, Problem
CLSCompliantAttribute for, Problem
digital signature for, Solution
exported types of, listing, Problem
inheritance hierarchies of types in, Problem, See Also
loading, exceptions generated by, Problem
malicious modifications to, preventing, Problem, See Also
members in
finding, Problem, See Also
retrieving filtered list of, Problem, See Also
nested types in, finding, Problem, See Also
permissions for, verifying, Problem, See Also
reflection and, Reflection
regular expressions compiled into, Solution, Discussion
serializable types in, finding, Problem, See Also
strong name for, Solution
subclasses of types in, Problem, See Also
Assembly class
GetExportedTypes method, Solution
GetReferencedAssemblies method, Solution, Discussion
LoadFrom method, Problem
assembly registration tool, Solution
Assert method
CodeAccessSecurity class, Solution, Discussion
Debug class, Discussion
assignment operators, overloading, Problem, See Also
Associative Law, Solution
asterisk (*) as wildcard character, Discussion
AsymmetricAlgorithm class, Clear method, Solution
AsyncAction class, Solution, Solution, Solution, Solution
asynchronous delegates
exceptions thrown by, Problem
notification of completion, Problem, See Also
polling, Problem, See Also
synchronous delegates converted to, Problem, See Also
timing out, Problem, See Also
Atan method, Math class, Solution
attributes
custom, exceptions for, Discussion
of files, Solution, Discussion, Solution
Attributes property, DirectoryInfo class, Solution
Attributes property, FileInfo class, Solution, Discussion
AverageCount64 counter, Discussion
AverageTimer32 counter, Discussion

B

backslash ()
in regular expression patterns, Solution
on command line, Discussion
BadImageFormatException exception, Solution, Solution
Balance class, Solution
base 10, converting to, from another base, Problem
base classes, overridden methods in, listing for derived class, Problem, See Also
Base64 data
decoding into byte array, Problem
encoding byte array as, Problem
Base64DecodeString method, Solution
Base64EncodeBytes method, Solution
BeginInvoke method, Discussion, Solution
BetterRandomString method, Solution
big-endian format, Discussion
binary data
decoding Base64 data into, Problem
encoding as a string, Problem
binary trees, Problem, See Also
BinaryReader class, Solution, Discussion
PeekChar method, Discussion
Read method, Discussion
BinarySearch method
Array class, Problem, See Also
ArrayList class, Problem, See Also, Problem, Problem, Discussion
PriorityQueue class, Solution
Set class, Solution
BinarySearchAll method, Solution
BinarySearchCountAll method, Solution
BinaryTree class, Solution, Discussion
BinaryTreeNode class, Solution, Discussion
BinaryWriter class, Solution, Discussion, Discussion
BindingFlags enumeration, Problem, Solution, Discussion
bit flags
in enumerations, testing, Problem, Discussion
turning on or off, Problem, See Also
BitArray class, Collections
(see also collections)
bitmaps (see binary data byte array)
bitmask, Discussion, Problem, Discussion
bitwise AND operator (&), Discussion, Discussion, Discussion, Solution, Discussion
bitwise complement operator (~), Problem
bitwise OR operator (|), Discussion, Discussion, Discussion, Solution, Discussion
bitwise XOR operator (^), Discussion, Solution, Discussion
blittable objects, Discussion
books
about .NET Framework programming, See Also
about adapter design pattern, See Also
about C#, What Was Left Out
about design patterns, See Also
about HTTP, See Also
about regular expressions, See Also
about security, See Also
about Visual Studio .NET, What Was Left Out
bool data type, Numbers
Boolean equations
ensuring correctness of, Problem, Discussion
simplifying, Problem, See Also
boolean values, conversions to, Problem, Discussion, Discussion
BooleanSwitch class, controlling tracing with, Solution, Discussion
boxing, Classes and Structures
finding where it occurs, Problem, See Also
preventing, Discussion
braces ({}), balanced, Problem
brackets (see angle brackets braces square brackets)
BreadthFirstSearch method, NTreeNode class, Solution, Discussion
BuildDependentAssemblyList method, Solution
byte array
breaking large numbers into, Problem
converting to a string, Problem
decoding Base64 data into, Problem
encoding as a string, Problem
passing strings to methods as, Problem, See Also
byte data type, Numbers, Problem, See Also

C

C language, compared to C#, Preface
C# in a Nutshell (O’Reilly), What Was Left Out
C# language, Preface
books about, What Was Left Out
specification for, Discussion
web sites with sample code for, Preface, Who This Book Is For
C# Language Pocket Reference (O’Reilly), What Was Left Out
C++ language, compared to C#, Preface
cache
ASP.NET, Solution
for objects, Problem, See Also
caching, Discussion
CalcHash method, The calculated hash
calculated hash algorithm, The calculated hash
calculations, ensuring correctness of, Problem, Discussion
CallbackAsyncDelegate method, Solution, Discussion
callbacks
delegates implementing, Discussion, Solution, See Also
interfaces used for, Problem, See Also
CallBackThroughIFace method, Solution, Discussion
CallCOMMethod method, Exception Handling
CallNextHookEx function, Discussion
CallSecureFunctionSafelyAndEfficiently method, Solution, Discussion
CannotUnloadAppDomainException exception, Solution
Capacity property, StringBuilder class, Solution, Discussion
caret (^), on command line, Discussion
CAS (Code Access Security), Security, Unsafe Code
case sensitivity
comparing characters using, Problem
comparing strings using, Problem
searching for strings at head or tail of string using, Problem
searching for strings within strings using, Problem, See Also
cast operator (( )), Problem
casting
as operator used for, Discussion, Problem, See Also
cast operator (( )) used for, Discussion
exceptions thrown as result of, Discussion
is operator used for, Discussion
predetermining success of, with is operator, Problem, See Also
to narrower data type, Problem, See Also
catch blocks, Exception Handling
(see also exception handling)
multiple, handling exceptions individually, Solution, Discussion
preventing unhandled exceptions with, Solution, Discussion
within finally blocks, Solution, Discussion
CDATA nodes, Discussion
Celsius
converting Fahrenheit to, Problem
converting to Fahrenheit, Problem
char data type, Numbers, Problem, See Also
characters
byte array of, converting to a string, Problem
case-sensitive or case-insensitive comparison of, Problem
comparison operators and, Solution
conversions to, Problem, Discussion, Discussion
ensuring maximum number in string, Problem
inserting into strings, Problem, See Also
iterating over characters in string, Problem
removing from head or tail of string, Problem
removing or replacing within a string, Problem, See Also
searching strings for, Problem, Discussion, Solution
type of, determining, Problem, See Also
within a range, determining, Problem
CharKind enumeration, Discussion
Check for Arithmetic Overflow/Underflow project property, Discussion
Check method, Balance class, Solution
checked context, Discussion, Discussion
checked keyword, Solution, Discussion
CheckPassword method, Solution, Discussion
CheckUserEnteredPath method, Solution
Children property, NTreeNode class, Solution
classes, Problem
(see also objects)
abstract base classes, Problem, Discussion
base classes, Problem, See Also
cloneable, Problem, See Also
COM objects using, Problem, See Also
concrete classes, Discussion
Equals method for, overloading, Problem
operating as union types, Discussion
overridden methods in, listing, Problem, See Also
performance of, Classes and Structures
polymorphism for, Problem, Discussion, Problem, See Also
represented as a string, Problem, See Also
sealed, adding events to, Problem, See Also
single instance of, Problem, See Also
static fields, initializing, Problem, See Also
when to use, Classes and Structures
Clear method
AsymmetricAlgorithm class, Solution
classes using, Discussion
DblQueue class, Solution
MultiMap class, Solution, Discussion
PriorityQueue class, Solution
SymmetricAlgorithm class, Solution
client (see web client)
ClientABC class, Solution
Clone method
DblQueue class, Solution
MultiMap class, Solution
PriorityQueue class, Solution
XmlNode class, Discussion
cloneable classes, Problem, See Also
cloning, Discussion
Close method, Discussion
CLS compliance
ensuring compatibility with managed languages, Problem
simple types not conforming to, Numbers
CLSCompliantAttribute for assembly, Problem
coarse-grained exception handling, Exception Handling
Code Access Security (CAS), Security, Unsafe Code
Code Access Security in Practice (Microsoft Patterns & Practices Group), See Also
code samples, About the Code
in this book, system requirements for, What You Need to Use This Book
permission requirements, Using Code Examples
web sites for, Preface, Who This Book Is For
CollectionBase abstract base class, Solution, Discussion
collections, Collections
displaying values as a delimited string, Problem
persisting between application sessions, Problem, See Also
StackTrace class acting as, Problem, See Also
strongly typed (restricted to specific data type), Problem, See Also
types of, Collections
CollectionsUtil class, Collections
COM components
exceptions for, Discussion, Problem, See Also
releasing, Problem
user-defined exceptions for, Problem
using C# classes, Problem, See Also
COMException exception, Discussion, Solution, Discussion
command-line parameters, parsing, Problem, See Also
comment characters, Solution
comments regarding this book, Comments and Questions
Commutative Law, Solution
CompanyData class, Solution, Discussion
CompanyDataSecProxy class, Solution, Discussion
CompanyDataTraceProxy class, Solution, Discussion
Compare method, string class, Solution, Solution
CompareFileVersions method, Solution
CompareHeight class, Discussion
CompareTo method, Solution
comparison operators, Solution
(see also Equals method)
characters used with, Solution
pointers and, Solution
Set objects used with, Solution, Discussion
strings used with, Discussion
CompileToAssembly method, Regex class, Solution, Discussion
compiling
/main switch, Discussion
conditionally, Problem, See Also
regular expressions, Problem, See Also
ComplexReplace method, Solution
component, as source for event log, determining, Problem, See Also
ConcatStringGetHashCode method, The string concatenation hash
concrete classes, implementing polymorphism with, Discussion
conditional operator (?:), overloading, Problem, See Also
ConditionalAttribute attribute, Solution
configuration files (see application configuration file machine configuration file)
configuration, exceptions for, Discussion
ConfigurationException exception, Discussion
console utilities, reading from and responding to, Problem
const field, Problem, See Also
constants, initializing at runtime, Problem, See Also
constructors
default, removing, Solution
overloaded, initializing objects with, Problem, Discussion
contact information for this book, Comments and Questions
contained object cache algorithm, The contained object cache
ContainedObjHash method, The contained object cache
Container class, Solution
Contains method
ArrayList class, Problem
DblQueue class, Solution
PriorityQueue class, Solution
Set class, Solution
SortedList class, Discussion, See Also
Contains method, PriorityQueue class, Solution
ContainsKey method
MultiMap class, Solution, Discussion
SortedList class, Discussion, See Also
ContainsString method, PriorityQueue class, Solution
ContainsValue method
MultiMap class, Solution, Discussion
SortedList class, Discussion, See Also
ContextMarshalException exception, Solution
control character, determining if character is, Problem, See Also
conventions used in this book, Conventions Used in This Book
Convert class
FromBase64CharArray method, Solution
ToBase64CharArray method, Solution
ToBoolean method, Discussion
ToByte method, Discussion
ToChar method, Discussion
ToDateTime method, Discussion
ToDecimal method, Discussion
ToDouble method, Discussion
ToInt16 method, Discussion
ToInt32 method, Solution, Discussion
ToInt64 method, Discussion
ToSByte method, Discussion
ToSingle method, Discussion
ToString method, Discussion
ToUInt16 method, Discussion
ToUInt32 method, Discussion
ToUInt64 method, Discussion
ConvertCollectionToDelStr method, Solution
ConvertDegreesToRadians method, Solution
ConvertObj method, Solution
ConvertRadiansToDegrees method, Solution
ConvertToASCIIStringSlow method, Discussion
ConvertToString method, Solution, Discussion
ConvertToStringSlow method, Discussion
Copy method
Array class, Discussion
File class, Solution
CopyTo method
DblQueue class, Solution
FileInfo class, Solution
ICollection interface, Solution
PriorityQueue class, Solution
Cos method, Math class, Solution
cosine function, Discussion
Count method, MultiMap class, Solution
Count property
DblQueue class, Solution
PriorityQueue class, Solution
Set class, Solution
CountAll method, Solution
CountChildren method
BinaryTreeNode class, Solution
NTreeNode class, Solution
CounterDelta32 counter, Discussion
CounterDelta64 counter, Discussion
CounterMultiTimer counter, Discussion
CounterMultiTimer100Ns counter, Discussion
CounterMultiTimer100NsInverse counter, Discussion
CounterMultiTimerInverse counter, Discussion
counters (see performance counters)
CounterTimer counter, Discussion
CounterTimerInverse counter, Discussion
CountImmediateChildren method, NTreeNode class, Solution
CountPerTimeInterval32 counter, Discussion
CountPerTimeInterval64 counter, Discussion
CRC (cyclic redundancy check), Discussion
Create method
DirectoryInfo class, Solution
File class, Solution, Discussion
FileInfo class, Solution, Discussion
CreateAbsoluteUri method, Solution
CreateAndHandlePoint method, Solution
CreateComplexCounter method, Solution
CreateDirectory method, Directory class, Solution
CreateFile method, Solution
CreateHashedPassword method, Solution, Discussion
CreateInternedStr method, Solution
CreateLockedFile method, Discussion
CreateLogFile method, Solution
CreateNestedObjects method, Discussion
CreateNode method, NTreeNodeFactory class, Solution, Discussion
CreatePoint method, Solution
CreateRegExDLL method, Solution
CreateSimpleCounter method, Solution
CreateStringHash method, Solution, Discussion
CreateText method, File class, Discussion
CreationTime property
DirectoryInfo class, Solution
FileInfo class, Solution
credit card number, regular expression patterns for, Solution
critical sections, locking objects against, Solution
CryptographicException exception, Solution
CryptographicUnexpectedOperationException exception, Solution
cryptography (see encryption security)
CryptoHash method, The CryptoHash method, The CryptoHash method using a nonstring
CryptoHash method algorithm, The CryptoHash method, The CryptoHash method using a nonstring
CryptoStream class, Discussion
CryptoString class, Solution, Discussion
Decrypt method, Discussion
Encrypt method, Discussion
RdGenerateSecretInitVector method, Discussion
RdGenerateSecretKey method, Discussion
CtoF method, Solution
currency, formatting strings as, Discussion
CurrentValue property, NTreeNodeFactory class, Solution
CustomAttributeFormatException exception, Discussion, Solution
cyclic redundancy check (CRC), Discussion

D

dangling pointers, Discussion
dash (-)
in regular expression patterns, Solution
on command line, Discussion
data, Problem
(see also files)
controlling and tracking access to, Problem, See Also
encrypting (see encryption)
isolated storage of, Discussion
securely storing, Problem, See Also
synchronizing reading and writing by multiple threads, Problem, See Also
thread-specific, storing privately, Problem, See Also
data types
casting (see casting)
collections restricted to specific data type, Problem, See Also
conversions between, Problem, See Also, Problem
(see also specific data types)
hash codes for, Problem, See Also
of variables, determining with is operator, Problem, See Also
simple, Numbers, Problem, See Also
date/time values, conversions to, Discussion
dates, regular expression patterns for, Solution
DateTime object, creating, Discussion
DblQueue class, Solution
DeadLock class, Discussion
deadlocks, preventing, Discussion
Debug class, Diagnostics
(see also Trace class)
Assert method, Discussion
interchanging with Trace class, Diagnostics
debugging, Diagnostics
(see also tracing)
configuring to break on exceptions, Solution, Discussion
enabling for specific components, Problem, See Also
decimal data type, Numbers
decorator design pattern, Discussion
Decrypt method, CryptoString class, Discussion
deep copying, Solution, Discussion
DeepClone class, Solution
degrees
converting Celsius to Fahrenheit, Problem
converting Fahrenheit to Celsius, Problem
converting radians to, Problem
converting to radians, Problem
DelegateCallback method, Solution, Discussion
delegates, Delegates and Events
asynchronous
exceptions thrown by, Problem
notification of completion, Problem, See Also
polling, Problem, See Also
timing out, Problem, See Also
callbacks implemented by, Discussion, Solution, See Also
compared to dynamic invocation using reflection, Discussion
for keyboard hook callback, Discussion
MatchEvaluator, Solution, Discussion
MemberFilter delegate, Discussion
multicast
controlling delegates executed in, Problem, See Also
handling exceptions for each delegate in, Problem, See Also
invocation list for, Discussion
return values from each delegate in, Problem, See Also
synchronous, converting to asynchronous, Problem, See Also
TypeFilter delegate, Discussion
DelegateUtilities class, Solution, Solution
Delete method
Directory class, Solution
DirectoryInfo class, Solution
File class, Solution
FileInfo class, Solution
Demand method, Solution, Discussion
DemonstrateRenameDir method, Solution
DeMorgan’s Theorem, Solution
DepthFirstSearch method
BinaryTreeNode class, Solution, Discussion
NTreeNode class, Solution, Discussion
DequeueHead method, DblQueue class, Solution
DequeueLargest method, PriorityQueue class, Solution
DequeueSmallest method, PriorityQueue class, Solution
DequeueTail method, DblQueue class, Solution
derived classes, overriding methods in, listing, Problem, See Also
design patterns
adapter design pattern, Solution, Discussion
books about, See Also, See Also
decorator design pattern, Discussion
dispose design pattern, Solution, See Also
façade design pattern, Solution, See Also
iterator design pattern, Discussion
memento design pattern, Solution, Discussion
observer design pattern, Discussion, Discussion
proxy design pattern, Solution, Discussion
simple factory design pattern, Solution, Discussion
singleton design pattern, Problem, See Also, Discussion
Design Patterns: Elements of Reusable Object Oriented Software (Gamma, Helm, Johnson, Vlissides), See Also, See Also
DetectXMLChanges method, Solution
DevPartner Profiler Community Edition, See Also
DevPartner Studio Professional Edition, See Also
diagnostics, Diagnostics
dictionary collections, Collections
difference of set objects, Problem, Solution, Discussion
DifferenceOf method, Set class, Solution, Discussion
digit, determining if character is, Problem, See Also
digital signatures, for assemblies, Solution
directories, Filesystem I/O
(see also files)
creating, Solution, Discussion
deleting, Solution, Discussion
determining if it exists, Problem, Discussion
monitoring for changes to, Problem, See Also
moving, Solution, Discussion
not existing when creating file, Discussion
not found, exceptions for, Discussion
renaming, Problem, See Also
searching for, using wildcards, Problem, See Also
timestamps of, manipulating, Solution
waiting for changes to, Problem, See Also
Directory class, Solution
CreateDirectory method, Solution
Delete method, Solution
Exists method, Solution
GetCreationTime method, Solution
GetDirectories method, Solution, Discussion
GetFiles method, Solution
GetFileSystemEntries method, Solution, Discussion
GetLastAccessTime method, Solution
GetLastWriteTime method, Solution
Move method, Solution, Solution
SetCreationTime method, Solution
SetLastAccessTime method, Solution
SetLastWriteTime method, Solution
directory trees, retrieving and manipulating, Problem
DirectoryInfo class, Solution
Attributes property, Solution
Create method, Solution
creating instance of, Solution
CreationTime property, Solution
Delete method, Solution
GetDirectories method, Solution, Discussion, Solution
GetFiles method, Solution
GetFileSystemInfos method, Solution, Discussion, Solution
LastAccessTime property, Solution
LastWriteTime property, Solution
MoveTo method, Solution, Solution
DirectoryInfoNotify class, Solution, Solution
DirectoryInfoObserver class, Solution, Solution
DirectoryNotFoundException exception, Discussion, Solution, Discussion
disassembler tool, Solution
DisplayDirAttr method, Solution
DisplayDirs method, Solution
DisplayException method, Solution
DisplayFileAttr method, Solution
DisplayFiles method, Solution
DisplayFilesDirs method, Solution
DisplayInheritanceHierarchyType method, Solution
DisplayNestedTypes method, Solution
DisplaySet method, Set class, Solution
DisplayTypeHierarchy method, Solution
dispose design pattern, Solution, See Also
Dispose method, Problem, See Also, Discussion, See Also
Distributive Law, Solution
DivideByZeroException exception, Solution
DllNotFoundException exception, Solution
Dns class, Resolve method, Solution, Solution
dollar amounts, regular expression patterns for, Solution
DOM model, Discussion
DoReversal method, Solution
double data type, Numbers, Problem
double quotes (“”), on command line, Discussion
double-queue, Problem, See Also
DownloadData method, WebClient class, Solution
DownloadFile method, WebClient class, Solution
DTD, validating XML conformance to, Problem, See Also
dump files, searching for, Problem
DuplicateWaitObjectException exception, Solution
DynamicInvoke method, Solution

E

ElapsedTime counter, Discussion
elements, in a collection, Collections
ellipses (...), omitted code in examples, Conventions Used in This Book
email address
for this book, Comments and Questions
regular expression patterns for, Solution
Encrypt method, CryptoString class, Discussion
encryption, Discussion
clearing key and initialization vector afterwards, Problem
cryptography providers, Solution
digital signatures for assemblies, Solution
of files, Problem, See Also
random number generator for, Problem
of strings, Problem, See Also
end-of-line character (see EOL character linefeed character)
endianness, Discussion
EndInvoke method, Solution, Discussion
EndOfStreamException exception, Solution, Discussion
EndsWith method, string class, Solution
EnhancedLog class, Discussion
Enqueue method, PriorityQueue class, Solution
EnqueueHead method, DblQueue class, Solution
EnqueueTail method, DblQueue class, Solution
EnsureCapacity method, StringBuilder class, Discussion
entry points, multiple, Problem, See Also
EntryPointNotFoundException exception, Solution
EntryWrittenEventHandler delegate, Discussion
Enum class
IsDefined method, Solution, Discussion
Parse method, Solution
enumerations, Enumerations
All member of, Discussion
conditional testing of bit flags for, Problem, Discussion
converting strings to, Problem, Discussion
converting text of to enumeration value, Problem
displaying as strings, Problem, See Also
exceptions for, Discussion
Flags attribute, Solution, Discussion
testing for valid value of, Problem, See Also, Problem, See Also
used as bitmask, Problem, Discussion
used as flags, Discussion, Problem, See Also
enumerators, custom, Problem, See Also
Environment class
StackTrace method, Discussion
StackTrace property, Discussion
environment variables, parsing paths in, Problem, See Also
Environment.NewLine constant, Solution
EOL (end-of-line) character, Problem
(see also linefeed character)
equality operator (==)
comparing pointers with, Solution
comparing strings with, Discussion
overriding, Discussion, Discussion
Set class, Solution, Discussion
Equals method, Solution, Discussion
GetHashCode method as alternative to, Solution
improving performance of, Problem, See Also
overriding for user-defined exceptions, Discussion
Set class, Solution, Discussion
string class, Solution, Discussion
equations, Problem
(see also calculations)
balanced, determining, Problem, See Also
complex, ensuring correctness of, Problem, Discussion
complex, simplifying, Problem, See Also
error handling, Problem
(see also exception handling)
web server errors, Problem, See Also
ErrorCode property, COMException exception, Discussion
even values, determining if number is, Problem
event logs
custom, maximum size of, Problem, See Also
monitoring for specific entries, Problem, See Also
multiple, Problem, See Also
searching, Problem, See Also
sources for, determining, Problem, See Also
events
adding to sealed class, Problem, See Also
listener for, canceling action that raised an event, Problem, See Also
mouse events, Discussion
observing object modifications, Problem, See Also
specialized parameters for, Problem, See Also
EventSearchLog class, Solution
Everything permissions set, Reflection, Discussion
examples (see code samples)
Exception class, Discussion
creating, Problem, See Also
GetBaseException method, Solution
mapped to HRESULT, Solution
exception event handlers, Solution, Discussion
exception handling, Exception Handling, Exception Handling
for asynchronous delegates, Problem, Discussion
coarse-grained, Exception Handling
for delegates in multicast delegate, Problem, See Also
fine-grained, Exception Handling
incorrect parameters, Problem, See Also
performance of, Exception Handling, Discussion
with threads, Problem, See Also, Discussion
when to throw specific exceptions, Problem, See Also
exceptions, Solution, Problem
(see also specific exceptions)
(see also specific exceptions)
asynchronous delegate throwing, Problem
breaking application before handling, Problem, Discussion
casting, Discussion
determining object originating, Problem
displaying information from, Problem, See Also
generated by method using reflection, Problem, See Also
handling individually, Problem, See Also
HRESULTs mapped to, Problem, See Also
innermost, finding, Problem
list of, Problem, See Also
not losing with finally blocks, Problem, See Also
rethrowing, Solution
throwing, Exception Handling
unhandled, preventing, Problem, See Also
user-defined, creating, Problem, See Also
when to throw, Problem, See Also
executable modules, comparing versions of, Problem, See Also
ExecutionEngineException exception, Exception Handling, Solution
Exists method
Directory class, Solution
File class, Discussion, Solution
FileInfo class, Discussion
exported types of an assembly, listing, Problem
expressions, Problem
(see also equations)
balanced, determining, Problem, See Also
complex, ensuring correctness of, Problem, Discussion
Extensible Markup Language (see XML)
ExternalException class, Exception Handling
ExternalException exception, Solution
ExtractGroupings method, RegExUtilities class, Solution

F

façade design pattern, Solution, See Also
factory design pattern, simple, Solution, Discussion
Fahrenheit
converting Celsius to, Problem
converting to Celsius, Problem
FieldAccessException exception, Solution
File class, Solution
AppendText method, Discussion
Copy method, Solution
Create method, Solution, Discussion
CreateText method, Discussion
Delete method, Solution
Exists method, Discussion, Solution
GetCreationTime method, Solution
GetLastAccessTime method, Solution
GetLastWriteTime method, Solution
Move method, Solution, Solution
Open method, Discussion
OpenRead method, Discussion
OpenText method, Discussion
OpenWrite method, Discussion
SetCreationTime method, Solution
SetLastAccessTime method, Solution
SetLastWriteTime method, Solution
file handle, opening file from, Problem, See Also
file streams, types of, Solution
(see also BinaryReader class; BinaryWriter class; FileStream class; StreamReader class; StreamWriter class)
FileAccess enumeration, Discussion
FileAttributes enumeration, Discussion, Discussion
FileInfo class, Solution
AppendText method, Discussion
Attributes property, Solution, Discussion
CopyTo method, Solution
Create method, Solution, Discussion
CreationTime property, Solution
Delete method, Solution
Exists method, Discussion
GetFiles method, Solution, Discussion
LastAccessTime property, Solution
LastWriteTime property, Solution
MoveTo method, Solution, Solution
Open method, Discussion
OpenRead method, Discussion
OpenText method, Discussion
OpenWrite method, Discussion
FileLoadException exception, Solution
FileMode enumeration, Discussion
FileNotFoundException exception, Solution, Solution, Discussion
files, Filesystem I/O
(see also directories)
attributes for, Solution, Discussion, Solution
copying, Solution
counting lines of text in, Problem, See Also
creating, Solution, Discussion, Solution
deleting, Solution
determining whether it exists, Problem
encrypting and decrypting, Problem, See Also
EOL character in, platform-independent, Problem
linefeed character in (see linefeed character)
loading, exceptions generated by, Problem
locking portions of, Problem, See Also
monitoring for changes to, Problem, See Also
moving, Solution
not found, exception for, Discussion
opening for reading and/or writing, Problem, See Also
opening from file handle, Problem, See Also
persisting collections to, between application sessions, Solution
reading, Solution, Solution, Discussion, Discussion
regular expression pattern for path name, Solution
renaming, Problem
returning all lines in an ArrayList, Discussion
searching, Problem, See Also
searching for, using wildcards, Problem, See Also
seeking (randomly accessing), Problem, See Also
temporary, Problem
timestamp of, manipulating, Solution, Discussion
waiting for changes to, Problem, See Also
writing to, Solution, Discussion
writing to multiple files at one time, Problem, See Also
FileShare enumeration, Discussion
FileStream class, Solution, Discussion, Discussion
creating instance of, Solution, Solution
creating instance of, from file handle, Discussion
Lock method, Solution
Read method, Discussion
ReadByte method, Discussion
Seek method, Solution
Unlock method, Discussion
Write method, Discussion
WriteByte method, Discussion
FileSystemWatcher class, Solution, Discussion, Discussion
as alternative to DirectoryInfoNotify class, Solution
properties of, Discussion
WaitForChanged method, Solution, Discussion
FileVersionInfo class, Discussion
FilteredArrayList class, Solution
FilteringOutputObtainingMembers method, Solution
finalizers, Discussion
finally blocks, Exception Handling
(see also exception handling)
catch blocks within, Solution, Discussion
for each delegate in multicast delegate, Discussion
not losing exceptions with, Problem, See Also
preventing unhandled exceptions with, Solution, Discussion
FindAll method, Solution
FindAllIllegalChars method, Solution
FindAllOccurrences method, Solution
FindAnEntryInEventLog method, Discussion
FindAny method, Solution
FindAnyIllegalChars method, Solution
FindIFaceMemberInAssembly method, Solution
FindInArray method, Solution, Discussion
FindInterfaces method, Type class, Solution, Discussion
FindMemberInAssembly method, Solution
FindMembers method, Type class, Solution
FindMethodOverrides method, Solution
FindOccurrenceOf method, Solution
FindOverriddenMethods method, Solution
FindSerializable method, Solution
FindSourceNamesFromAllLogs method, Solution
FindSourceNamesFromLog method, Solution
FindSpecificInterfaces method, Solution
FindSubclassOfType method, Discussion
FindSubstrings method, Solution, Discussion
fine-grained exception handling, Exception Handling
FinishedProcessingGroup method, INotificationCallbacks interface, Solution, Discussion
FinishedProcessingSubGroup method, INotificationCallbacks interface, Solution, Discussion
fixed statement, Discussion, Discussion
fixed-size arrays, Collections, Problem
Flags attribute, enumerations, Solution, Discussion
flags, enumerations used as, Problem, Discussion, Problem, See Also
(see also bit flags)
FlipBit method, Solution
float data type, Numbers, Problem
floating-point values
equality with fractions, Problem
rounding, Problem, See Also
Floor method, Math class, Solution
folding hash algorithm, The folding hash
FoldingHash method, The folding hash
fonts used in this book, Conventions Used in This Book
for loop, iterating over characters in string, Solution
foreach loop
iterating over characters in string using, Solution
iterating over interfaces with, Discussion
nested, iterating across nested arrays of objects, Problem, See Also
optimizing, Discussion
polymorphic use of, Problem, See Also
Format method, string class, Solution, Discussion
FormatException exception, Discussion, Discussion, Discussion, Exception Handling, Discussion, Solution
formatting strings, Problem, See Also
forms, simulating execution of, Problem, See Also
fractions, equality with floating-point values, Problem
FreeNamedDataSlot method, Thread class, Discussion
FromASCIIByteArray method, Solution
FromBase64CharArray method, Convert class, Solution
FromUnicodeByteArray method, Solution
FtoC method, Solution
FullTrust permission set, Reflection, Discussion
FusionLog property, Solution

G

GenerateGetOrPostRequest method, Solution, Discussion
GenerateIV method, RijndaelManaged class, Discussion
GenerateKey method, RijndaelManaged class, Discussion
generics, Preface
Get methods, Type class, Solution
GET request, sending to web server, Problem, See Also
GetAll method, Solution
GetAllDirFilesRecurse method, Solution
GetAllFilesInPatternRecurse method, Solution
GetAvailableThreads method, ThreadPool class, Solution, Discussion, Solution
GetBaseDefinition method, MethodInfo class, Solution, Discussion
GetBaseException method, Exception class, Solution
GetBaseTypeList method, Solution, Discussion
GetBytes method
ASCIIEncoding class, Solution
UnicodeEncoding class, Solution
GetCharKind method, Discussion
GetCharKindInString method, Discussion
GetChild method, NTreeNode class, Solution
GetCreationTime method
Directory class, Solution
File class, Solution
GetData method, Thread class, Discussion
GetDirectories method
Directory class, Solution, Discussion
DirectoryInfo class, Solution, Discussion, Solution
GetDirectoryName method, Path class, Discussion
GetEnumerator method, PriorityQueue class, Solution
GetExportedTypes method, Assembly class, Solution
GetExtension method, Path class, Discussion
GetFileName method, Path class, Discussion
GetFileNameWithoutExtension method, Path class, Discussion
GetFiles method
Directory class, Solution, Discussion
DirectoryInfo class, Solution
FileInfo class, Solution, Discussion
GetFileSystemEntries method, Directory class, Solution, Discussion
GetFileSystemInfos method, DirectoryInfo class, Solution, Discussion, Solution
GetHashCode method, Problem, See Also
overriding, Solution, Discussion, Discussion
Set class, Solution
GetHTMLFromURL method, Solution
GetInterface method, Type class, Problem
GetInterfaces method, Type class, Problem
GetInvocationList method, MulticastDelegate class, Solution, Discussion, Solution, Solution
GetKeys method, Solution
GetLastAccessTime method
Directory class, Solution
File class, Solution
GetLastWriteTime method
Directory class, Solution
File class, Solution
GetLines method, Solution
GetLSB method, Solution
GetMaxThreads method, ThreadPool class, Solution
GetMember method, Type class, Problem, Solution, Discussion, Discussion
GetMembers method, Type class, Problem
GetMethod method, Discussion
GetMethods method, Solution, Discussion
GetMSB method, Solution
GetNamedDataSlot method, Thread class, Discussion
GetPathRoot method, Path class, Discussion
GetReferencedAssemblies method, Assembly class, Solution, Discussion
GetResponse method, HttpWebResponse class, Solution, Discussion
GetResponseStream method, HttpWebResponse class, Discussion
GetRoot method
BinaryTree class, Solution
NTree class, Solution
GetSerializableTypeNames method, Solution
GetStackTraceDepth method, Discussion
GetStream method, TcpClient class, Discussion
GetString method
ASCIIEncoding class, Discussion
UnicodeEncoding class, Discussion
GetSubClasses method, Solution
GetTempFileName method, Path class, Solution
GetTempPath method, Path class, Solution
GetType method, Type class, Discussion
GetValues method, Solution
GetVersionInfo method, FileVersionInfo class, Discussion
GradeBoard class, Solution, Discussion
greater than operator (>), Solution
greater than or equal operator (>=), Solution
groups in regular expressions, Problem, See Also
GUIDs, created by assembly registration tool, Solution

H

HandleEnum method, Solution, Discussion
HandleFlagsEnum method, Solution
HandlingInvalidChars method, Solution
hash code algorithms
calculated hash, The calculated hash
contained object cache, The contained object cache
CryptoHash method, The CryptoHash method, The CryptoHash method using a nonstring
folding hash, The folding hash
guidelines for, Discussion
shift and add hash, The shift and add hash
simple hash, The simple hash
string concatenation hash, The string concatenation hash
hash values
appending to strings for verification, Solution, Discussion, Problem, See Also
creating for a data type, Problem, See Also
hashed passwords, Solution, Discussion
HashOps class, Solution
Hashtable class, Discussion, Collections
(see also collections)
displaying sorted by keys and/or values, Problem, See Also
maximum size for, setting, Problem, See Also
maximum values stored in, setting, Problem, See Also
minimum size for, setting, Problem, See Also
minimum values stored in, setting, Problem, See Also
one-to-many map (multimap) using, Problem, See Also
persisting between application sessions, Problem, See Also
Hashtable object
observing additions and modifications to, Problem, See Also
storing grouped search results in, Problem, Solution
HashtableEventArgs class, Solution, Discussion
HashtableObserver class, Solution, Discussion
HashtableSubject class, Solution, Discussion
hexadecimal values, formatting strings as, Discussion
hooks, Windows keyboard, Problem, See Also
host name
converting to IP address, Problem
resolving IP address to, Problem
HostName2IP method, Solution
HRESULT
for user-defined exceptions, Discussion
mapping to exceptions, Problem, See Also
throwing exceptions as alternative to, Exception Handling
unknown, exception for, Discussion
user-defined, handling, Problem
HTML
converting XML to, Problem, See Also
obtaining from URL, Problem
tags, checking if balanced, Problem, See Also
HTTP status codes, Discussion
HTTP: The Definitive Guide (Gourley, Totty), See Also
HttpStatusCode enumeration, Discussion
HttpWebRequest class, Solution
HttpWebResponse class
GetResponse method, Solution
GetResponseStream method, Discussion
StatusCode property, Solution
HybridDictionary class, Collections
hyphen (-)
in regular expression patterns, Solution
on command line, Discussion
hypotenuse of a triangle, Solution

I

I/O (see files)
IAsynchResult interface, IsCompleted property, Solution, Discussion
ICloneable interface, Discussion
ICollection class, Solution
ICollection interface, Solution, Discussion
ICompanyData interface, Solution
IComparable interface, Solution, See Also, Solution, See Also, Solution
IComparer interface, Solution, See Also, Discussion
icons used in this book, Conventions Used in This Book
IDisposable interface, Discussion
IEnumerable interface, Solution, Discussion, Discussion, Discussion
IEnumerator interface, Discussion, Discussion
IFormattable interface, ToString method and, Discussion
Ildasm disassembler tool, Solution
Index property, BinaryTreeNode class, Solution
indexers
MultiMap class, Solution, Discussion
parameters for, verifying correctness of, Problem, See Also
Set class, Solution
IndexOf method
PriorityQueue class, Solution
string class, Solution, Solution, Discussion
IndexOfAny method, string class, Solution, Discussion, Solution
IndexOutOfRangeException exception, Exception Handling, Solution, Discussion, Solution
inequality operator (!=)
comparing pointers with, Solution
overriding, Discussion, Discussion
Set class, Solution, Discussion
inheritance hierarchies, of types in assemblies, Problem, See Also
InnerException property, TargetInvocationException exception, Solution
InnerXML property, XmlElement class, Discussion
INotificationCallbacks interface, Solution, Discussion
input/output (see files)
Insert method
string class, Solution
StringBuilder class, Discussion
InsertIntoArray method, Solution
InstallException exception, Discussion
instance methods, when to use, Discussion, Discussion
int data type, Numbers
interfaces
callbacks provided with, Problem, See Also
implementing polymorphism with, Discussion
members in, finding, Problem
polymorphism implemented with, Problem, See Also, Solution, See Also
searching, advanced mechanisms for, Problem, See Also
Intern method, string class, Solution, See Also
intern pool, Solution, See Also
InternedStrCls class, Solution
Internet
accessing through proxy, Problem, See Also
reading XML data from, Problem
intersection of set objects, Problem, Solution, Discussion
IntersectionOf method, Set class, Solution, Discussion
InvalidCastException exception, Discussion, Discussion, Problem, Discussion, Solution
InvalidComObjectException exception, Solution
InvalidEnumArgumentException exception, Exception Handling, Solution, Discussion
InvalidFilterCriteriaException exception, Solution
InvalidOleVariantTypeException exception, Solution
InvalidOperationException exception, Exception Handling, Discussion, Solution
InvalidPathChars field, Path class, Solution, Discussion
InvalidProgramException exception, Solution
InvokeEveryOther method, Solution
InvokeInReverse method, Solution
IOException exception, Discussion, Solution, Discussion, Discussion, Discussion
IP address
converting host name to, Problem
regular expression patterns for, Solution
resolving to host name, Problem
IPHostEntry class, Discussion
is operator
determining variable’s type with, Problem, See Also
when to use, Problem
IsApproximatelyEqualTo method, Solution
IsCharEqual method, Solution
IsCompleted property, Solution, Discussion, Discussion
IsDefined method, Enum class, Solution, Discussion
IsEven method, Solution
IsGranted method, SecurityManager class, Solution
IsInRange method, Solution
IsIntegerRegEx method, Discussion
IsInterned method, string class, Solution, See Also
IsMatch method, Regex class, Discussion
IsNumeric method, Solution
IsNumericFromTryParse method, Solution
IsNumericRegEx method, Solution
IsOdd method, Solution
IsolatedStorageException exception, Solution
IsProcessResponding method, Solution
IsSafeToConvert method, Solution
IsSubclassOf method, Type class, Solution
IsSubsetOf method, Set class, Solution, Discussion
IsSupersetOf method, Set class, Solution, Discussion
isThreadAvailable method, Solution
IsUnsignedIntegerRegEx method, Discussion
italic text used in this book, Conventions Used in This Book
iterator design pattern, Discussion

J

jagged arrays, Collections
navigating with pointer, Solution
reversing subarrays in, Problem
Java language, compared to C#, Preface
Join method
string class, Solution
Thread class, Solution, Discussion

K

keyboard input, monitoring and responding to, Problem, See Also
Keys property, Hashtable class, Solution, Discussion

L

Language enumeration, Solution, Solution, Solution, Discussion, Problem
languages
CLS-compliant, ensuring compatibility with, Problem
converting between simple types consistently across, Problem, See Also
LastAccessTime property
DirectoryInfo class, Solution
FileInfo class, Solution
LastChanceHandler method, Discussion
LastWriteTime property
DirectoryInfo class, Solution
FileInfo class, Solution
LastWriteTime property, FileInfo class, Solution
Learning C# (O’Reilly), What Was Left Out
least-significant bits (LSB) of an integer, determining, Problem
Left property, BinaryTreeNode class, Solution
Length property, StringBuilder class, Discussion
less than operator (<), Solution
less than or equal operator (<=), Solution
letter, determining if character is, Problem, See Also, Problem
(see also characters)
lexers (see tokenizers)
Line structure, Solution, Solution
LineCount method, Solution
LineCount2 method, Solution
linefeed character, Problem
(see also EOL (end-of-line character))
counting in string or file, Problem, See Also
Macintosh ( ), Discussion
Unix ( ), Discussion
XSLT, Discussion
ListDictionary class, Discussion, Collections
listeners element, application configuration file, Discussion
ListExportedTypes method, Solution
little-endian format, Discussion
LoadFrom method, Assembly class, Problem
LoadMissingDLL method, Solution
LocalDataStoreSlot class, Discussion
LocalIntranet permission set, Reflection, Discussion
lock keyword, Discussion
Lock method, FileStream class, Solution
locking
file streams, Discussion
files, Problem, See Also
objects, Solution
Log class, Solution
log file, creating and maintaining, Problem, See Also
Log4Net software, Solution
logging, Solution
(see also event logs)
Log4Net software for, Solution
logical AND operator (&&), overloading, Problem, See Also
logical OR operator (||), overloading, Problem, See Also
long data type, Numbers
LSB (least-significant bits) of an integer, determining, Problem

M

machine configuration file, Discussion
Magnetic class, Solution
managed code, Unsafe Code
(see also unsafe code)
accessing files created by unmanaged code, Discussion
blittable and nonblittable types and, Discussion
called by COM objects, Exception Handling
dispose design pattern and, Discussion
exceptions for, mapping to HRESULTs, Problem
P/Invoke and, Classes and Structures, Solution
releasing COM object through, Problem
managed execution environment, Preface
managed languages, Problem
Marshal class, ReleaseComObject method, Solution
MarshalDirectiveException exception, Solution
Mastering Regular Expressions (O’Reilly), See Also
Mastering Visual Studio .NET (O’Reilly), What Was Left Out
Match method, Regex class, Regular Expressions
compiling regular expressions with, Solution, Discussion
RightToLeft option for, Solution
verifying syntax of regular expression using, Discussion
Match object, Regular Expressions, Discussion
MatchCollection object, Discussion, Problem, See Also
Matches method, Regex class, Regular Expressions
compiling regular expressions with, Solution, Discussion
subscripting array returned by, Solution
MatchesCollection object, Regular Expressions
MatchEvaluator delegate, Solution, Discussion
MatchHandler method, Solution
Math class
Acos method, Solution
Asin method, Solution
Atan method, Solution
converting degrees to radians for, Problem
converting radians to degrees for, Problem
Cos method, Solution
Floor method, Solution
Pow method, Solution
Round method, Solution
Sin method, Solution
Sqrt method, Solution
Tan method, Solution
mathematical equations, ensuring correctness of, Problem, Discussion
MaxChildren property
NTree class, Solution
NTreeNodeFactory class, Solution
MaxMinSizeHashtable class, Solution
MaxMinValueHashtable class, Solution
Media class, Solution
MediaCollection class, Solution
MemberAccess privilege, Reflection, Discussion
MemberAccessException exception, Discussion
MemberFilter delegate, Solution, Discussion
members
dynamically invoking using reflection, Problem, See Also
searching, advanced mechanisms for, Problem, See Also
thread-safe access to, Problem, See Also
MemberTypes enumeration, Discussion
Memento class, Discussion
memento design pattern, Solution, Discussion
MementoCareTaker class, Solution, Discussion
MemoryStream class, Discussion
MethodAccessException exception, Discussion, Solution
MethodInfo class, GetBaseDefinition method, Solution, Discussion
methods, Discussion
(see also parameters)
calling on multiple object types, Problem, See Also
dynamically invoking using reflection, Problem, See Also
exceptions for, Discussion
format parameters, exceptions for, Discussion
instance, when to use, Discussion, Discussion
invoked using reflection, exceptions generated by, Problem, See Also
overridden, listing for a derived class, Problem, See Also
parameters for, verifying correctness of, Problem, See Also
pointers passed to, controlling changes to, Problem, See Also
preventing compilation of, Solution
raising notifications from non-virtual methods, Discussion
returning multiple items from, Problem, Discussion
static, when to use, Discussion, Discussion
thread-safe access to, Problem, See Also
MissingFieldException exception, Solution
MissingManifestResourceException exception, Solution
MissingMemberException exception, Solution
MissingMethodException exception, Solution
ModifyDirAttr method, Solution
ModifyFile method, Solution
ModifyFileAttr method, Solution
ModifyNumericField method, Solution
monetary values, regular expression patterns for, Solution
Monitor class, TryEnter method, Discussion
MonitorMethodAccess class, Discussion
most-significant bits (MSB) of an integer, determining, Problem
mouse events, Discussion
mouse, manipulating, Problem
Move method
Directory class, Solution, Solution
File class, Solution, Solution
MoveInFile method, Discussion
MoveTo method
DirectoryInfo class, Solution, Solution
FileInfo class, Solution, Solution
MSB (most-significant bits) of an integer, determining, Problem
MSDN Library, What Was Left Out
MultiCallBackThroughIFace method, Discussion
multicast delegates
controlling delegates executed in, Problem, See Also
handling exceptions for each delegate in, Problem, See Also
invocation list for, Discussion
return values from each delegate in, Problem, See Also
MulticastDelegate class, GetInvocationList method, Solution, Discussion, Solution, Solution
MulticastNotSupportedException exception, Solution
MultiClone class, Solution
multidimensional arrays, Collections, Solution
MultiMap class, Solution, Discussion
MultiMementoCareTaker class, Solution, Discussion
MultiTask class, Discussion
multithreading (see threading)
MultiWriter class, Solution
MyKeys.snk file, Solution

N

n-ary trees, Problem, See Also
named groups in regular expressions, Problem, Discussion
named pipes, Problem, See Also
NamedPipeClient class, Solution, Discussion
NamedPipeInterop class, Solution
NamedPipeServer class, Solution, Discussion
NamedPipesInterop class, Discussion
NameValueCollection class, Collections
narrowing conversions, Discussion, Solution
NetworkCredential class, Discussion
networking, Networking
accessing Internet through web proxy, Problem, See Also
converting host name to IP address, Problem
downloading data from server, Problem
form execution, simulating, Problem, See Also
forming absolute URI, Problem
named pipes communicating across network, Problem, See Also
parsing a URI, Problem, See Also
resolving IP address to host name, Problem
sending GET or POST to web server, Problem, See Also
TCP client, creating, Problem
TCP server, creating, Problem, See Also
URL, obtaining HTML from, Problem
web server errors, handling, Problem, See Also
newline character (see EOL character linefeed character)
NodeChangedEvent method, Solution
NodeChangingEvent method, Solution
NodeInsertedEvent method, Solution
NodeInsertingEvent method, Solution
NodeRemovedEvent method, Solution
NodeRemovingevent method, Solution
NoFlags privilege, Discussion
nonblittable objects, Discussion
NotFiniteNumberException exception, Discussion, Solution
notification callbacks (see callbacks)
notifications, raising from non-virtual methods, Discussion
NotifyClient class, Solution
NotifyFilters enumeration, Discussion
NotImplementedException exception, Discussion, Solution, Discussion
NotSupportedException exception, Discussion, Solution, Discussion
NTree class, Solution, Discussion
NTreeNode class, Solution, Discussion
NTreeNodeFactory class, Solution, Discussion
NullReferenceException exception, Solution, Discussion, Discussion, Exception Handling, Discussion, Solution, Solution
NumberOfItems32 counter, Discussion
NumberOfItems64 counter, Discussion
NumberOfItemsHEX32 counter, Discussion
NumberOfItemsHEX64 counter, Discussion
NumberStyles enumeration, Discussion
numeric data types
bitwise complement operator used with, Problem
casting to narrower data type, Problem, See Also
equality between fractions and floating-point values, Problem
pointers to, converting to strings, Problem, See Also
simple, Numbers
numeric promotion, Discussion
numeric values
big flags in, turning on or off, Problem, See Also
breaking large numbers into byte arrays, Problem
casting to narrower data type, Problem, See Also
contained in string, determining, Problem, Discussion
conversions to, Discussion
converting strings to, Problem, Discussion
converting to base 10 from another base, Problem
determining if character is, Problem, See Also
determining if even or odd, Problem
exceptions for, Discussion
formatting strings as, Discussion, Discussion
obtaining most- or least-significant bits of, Problem
regular expression patterns for, Solution
rounding floating-point values, Problem, See Also
NumOfChildren property
BinaryTreeNode class, Solution
NTreeNode class, Solution

O

ObjCache class, Solution
ObjectDisposedException exception, Discussion, Discussion, Exception Handling, Discussion
objects, Problem
(see also classes)
cache for, Problem, See Also
determining objects originating exceptions, Problem
disposal of, ensuring, Problem, See Also
disposed, exception for, Discussion
generating tracing code when creating, Problem, Discussion
initializing with overloaded constructors, Problem, Discussion
locking against critical sections, Solution
methods used on multiple object types, Problem, See Also
nested arrays of, iterating across, Problem, See Also
observing modifications to a Hashtable, Problem, See Also
rolling back changes to, Problem, Discussion
serializing, Problem, See Also
set objects, creating, Problem, See Also
single instance of, Problem, See Also
stored in arrays
searching, Problem, See Also
sorting, Problem, See Also
strings converted to, Problem, See Also
ObjState class, Solution
observer design pattern, Discussion, Discussion
odd values, determining if number is, Problem
one-to-many map, Problem, See Also
OnEntryWritten method, Solution
OnlyOne class, Solution
OnlyStaticOne class, Solution
Open method
File class, Discussion
FileInfo class, Discussion
OpenRead method
File class, Discussion
FileInfo class, Discussion
OpenText method
File class, Discussion
FileInfo class, Discussion
OpenWrite method
File class, Discussion
FileInfo class, Discussion
operators, precedence of, overriding, Solution
(see also specific operators)
out parameter
acting as return parameter, Solution
passing pointers as, Discussion
OutOfMemoryException exception, Exception Handling, Solution
OverflowException exception, Solution, Discussion, Discussion, Solution
OverFlowException exception, Discussion, Discussion
O’Reilly & Associates, contact information for, Comments and Questions

P

P/Invoke method, Classes and Structures
P/Invoke wrapper class, Solution, Solution
parameters
command line, parsing, Problem, See Also
exceptions for, Discussion
out keyword for, Solution
verifying correctness of, Problem, See Also
parentheses (( ))
balanced, Problem
in equations, Solution
Parse method, Solution, Discussion
Enum class, Solution
Line structure, Solution
numeric types, Solution
ParseCmdLine class, Solution
ParsePath method, Solution
ParsePathEnvironmentVariable method, Solution
ParseUri method, Solution
passwords, for user settings data, Solution, Discussion
Path class
GetDirectoryName method, Discussion
GetExtension method, Discussion
GetFileName method, Discussion
GetFileNameWithoutExtension method, Discussion
GetPathRoot method, Discussion
GetTempFileName method, Solution
GetTempPath method, Solution
InvalidPathChars field, Solution, Discussion
PathSeparator field, Solution, Discussion
path name, regular expression pattern for, Solution
paths
parsing, Problem
parsing in environment variables, Problem, See Also
separator character for, Solution, Discussion
using in file functions, Discussion
verifying syntax and existence of, Problem, See Also
PathSeparator field, Path class, Solution, Discussion
PathTooLongException exception, Solution
patterns (see design patterns regular expressions)
PauseAndCreateFile method, Solution
Peek method, StreamReader class, Solution, Discussion
PeekChar method, BinaryReader class, Discussion
PeekHead method, DblQueue class, Solution
PeekLargest method, PriorityQueue class, Solution
PeekSmallest method, PriorityQueue class, Solution
PeekTail method, DblQueue class, Solution
percents, formatting strings as, Discussion
performance
critical sections and, Discussion
exception handling and, Exception Handling, Discussion
GetHashCode method used to test equality, Solution
observer design pattern and, Discussion
regular expressions and, Problem, See Also
reversing arrays and, Problem, See Also
performance counters
averages calculated by, Problem, See Also
in .NET Framework, Discussion
simple counters, Problem, See Also
PerformanceCounter class, Discussion, Discussion
permissions
asserting safely, Problem, See Also
for assemblies, Problem, See Also
for reflections, Reflection, Discussion
phone number, regular expression patterns for, Solution
pipes, named, Problem, See Also
Platform Invoke method (see P/Invoke method)
PlatformNotSupportedException exception, Solution
pluggable protocols, exceptions for, Discussion
pointers
arrays of, Problem, See Also
comparing, Problem
controlling changes to when passed to methods, Problem, See Also
dangling, Discussion
navigating arrays with, Problem, See Also
null, checking for, Discussion
passing as out or ref parameter, Discussion
passing by reference, Solution, Discussion, Solution
passing by value, Solution, Discussion
switching unknown pointer types, Problem, See Also
to an array element, returning, Problem, See Also
to an array of bytes, Solution
to fixed arrays, manipulating, Problem
to numeric data types, converting to strings, Problem, See Also
to unknown types, arrays of, Problem, See Also
unsafe code and, Unsafe Code
void, Solution, Solution, Discussion
PolicyException exception, Solution
polymorphism
foreach method and, Problem, See Also
implementing with abstract base class, Problem, Discussion
implementing with concrete class, Discussion
implementing with interfaces, Discussion, Problem, See Also
interfaces implementing, Solution, See Also
POST request, sending to web server, Problem, See Also
Pow method, Math class, Solution
preprocessor directives, allowing or preventing compilation using, Solution
PreventLossOfException method, Solution, Discussion
Print method, BinaryTree class, Solution
PrintDepthFirst method
BinaryTreeNode class, Solution
NTreeNode class, Solution
priority queue, Problem, See Also
PriorityQueue class, Solution
Process class
Responding property, Discussion
StartInfo property, Solution
processes
launching console utilities with, Problem
not responding, determining, Problem, Discussion
ProcessInvoice method, Solution
ProcessStartInfo class, Solution
profiling tools, Solution, See Also
properties, parameters for, verifying correctness of, Problem, See Also
protocol, pluggable, exceptions for, Discussion
proxy
accessing Internet through, Problem, See Also
used for security, Solution, See Also
proxy design pattern, Solution, Discussion
punctuation, determining if character is, Problem, See Also
Pythagorean theorem, Solution

Q

QueryXML method, Solution
Queue class, snapshot of, Collections, Problem
(see also collections)
queues
double-queue, Problem, See Also
priority, Problem, See Also
quotes, on command line, Discussion

R

radians
converting degrees to, Problem
converting to degrees, Problem
Random class, Solution
random number generator, Problem
range, determining if character is in, Problem
RankException exception, Solution
RateOfCountsPerSecond32 counter, Discussion
RateOfCountsPerSecond64 counter, Discussion
RawFraction counter, Discussion
RdGenerateSecretInitVector method, CryptoString class, Discussion
RdGenerateSecretKey method, CryptoString class, Discussion
Read method
BinaryReader class, Discussion
FileStream class, Discussion
StreamReader class, Solution, Discussion
XMLTextReader class, Solution
XmlTextReader class, Solution
ReadAllBufferedLog method, Solution
ReadAllBufferedLogBlock method, Solution
ReadAllLog method, Solution
ReadAllLogAsBytes method, Solution
ReadBlock method, StreamReader class, Solution
ReadByte method, FileStream class, Discussion
ReaderDecorator class, Solution, Discussion
ReaderWriterLock class, Solution, Discussion
ReadFile method, Solution
ReadLine method, StreamReader class, Solution, Solution, Solution, Discussion
ReadLogByLines method, Solution
ReadLogPeeking method, Solution
ReadNestedObjects method, Discussion
readonly field, Problem, See Also
ReadSensitiveData method, SecretFile class, Solution
ReadToEnd method, StreamReader class, Solution, Discussion
ReceiveInvoice method, FulfillmentEnvelope XML
ref parameter, passing pointers as, Discussion
reference types, unsafe code and, Unsafe Code
Reflect class, Discussion
reflection, Reflection
dynamically invoking members using, Problem, See Also
handling exceptions generated by methods using, Problem, See Also
permissions for, Reflection, Discussion, Solution, Discussion
ReflectionEmit privilege, Reflection, Discussion
ReflectionException method, Discussion
ReflectionTypeLoadException exception, Solution
Regasm.exe command-line tool, Solution
Regex class
CompileToAssembly method, Solution, Discussion
IsMatch method, Discussion
Match method, Solution, Discussion
Matches method, Solution, Discussion, Solution
Replace method, Solution, Discussion, Solution, Discussion
Split method, Solution
Regex object, Regular Expressions, Discussion
RegExUtilities class, ExtractGroupings method, Solution
Register for COM interop field, in project properties, Solution
RegistryKey class
changing maximum event log size using, Discussion
determining sources for event logs using, Discussion
Regular Expression Pocket Reference (O’Reilly), See Also
regular expressions, Regular Expressions, Discussion
balanced, determining, Problem, See Also
books about, See Also
compiling, Problem, See Also
conditionally replacing matching text with a new string, Problem, See Also
counting lines of text using, Problem, See Also
documenting, Problem
finding last match in a string, Problem
finding specific occurrences of a match, Problem, See Also
finding substrings in strings using, Problem, See Also
groups in, Problem, See Also
list of common patterns for, Problem, See Also
performance of, Problem, See Also
replacing matching text with a new string, Problem, See Also
returning line in which match is found, Problem, See Also
testing for numeric value in a string using, Solution
tokenizers using, Problem, See Also
verifying syntax of, Problem
ReleaseComObject method, Marshal class, Solution
RemoteComponentException class, Solution, Discussion
RemotingException exception, Solution
RemotingTimeoutException exception, Solution
Remove method
MultiMap class, Solution, Discussion
Set class, Solution
string class, Solution, Discussion
StringBuilder class, Discussion
RemoveAt method, Set class, Solution
RemoveFromArray method, Solution
RemoveLeftNode method, BinaryTreeNode class, Solution
RemoveNode method, NTreeNode class, Solution, Discussion
RemoveRightNode method, BinaryTreeNode class, Solution
RenameFile method, Solution
Replace method
Regex class, Solution, Discussion
MatchEvaluator delegate for, Solution, Discussion
string class, Discussion
StringBuilder class, Discussion
Resolve method, Dns class, Solution, Solution
resources, unmanaged, disposing of, Problem, See Also
Responding property, Process class, Discussion
ResponseCategories enumeration, Solution
RestoreObj method, Solution
ReThrowException method, Discussion
ReturnDimensions method, Solution
ReturnTypeFilter method, Solution
Reverse method, Array class, Solution
Reverse2DimArray method, Solution
ReverseJaggedArray method, Solution
RevertAssert method, Discussion
Richter, Jeffrey (“Safe Thread Synchronization”), Discussion
Right property, BinaryTreeNode class, Solution
RightToLeft constant, Solution
Rijndael algorithm, Discussion, Solution
RijndaelManaged class
GenerateIV method, Discussion
GenerateKey method, Discussion
RNGCryptoServiceProvider class, Solution
Round method, Math class, Solution
RoundDown method, Solution
rounding floating-point values, Problem, See Also
RoundUp method, Solution
RunClient method, Solution
RunProcessToReadStdIn method, Solution
RunServer method, Solution

S

Safe Thread Synchronization (MSDN Magazine), See Also
SafeArrayRankMismatchException exception, Solution
SafeArrayTypeMismatchException exception, Solution
SaferMemberAccess class, Solution
SampleCounter counter, Discussion
SampleFraction counter, Discussion
SaveObj method, Solution
SaveSensitiveData method, SecretFile class, Solution
sbyte data type, Numbers, Problem, See Also
scientific notation, formatting strings as, Discussion
sealed classes, adding events to, Problem, See Also
SearchDepthFirst method, BinaryTree class, Solution
searches
array elements, Problem, See Also, Problem, Problem, Discussion
binary trees, Solution, Discussion
characters in strings, Problem, Discussion, Solution
event logs, Problem, See Also
files or directories, Problem, See Also
groups returned by, Problem, See Also
interfaces, Problem, See Also
members, Problem, See Also
n-ary trees, Solution, Discussion
queue items, Solution
set objects, Solution
strings in files, Problem, See Also
substrings in strings, Problem, See Also, Problem, Problem, See Also, Problem, Problem, See Also
tokens in strings, Problem, See Also, Problem, See Also
SearchInterfacesOfType method, Solution
SearchMembers method, Solution
SearchType class, Solution, Solution
SecretFile class, Solution
ReadSensitiveData method, Solution
SaveSensitiveData method, Solution
SecureFunction method, Solution, Discussion
security, Security
(see also permissions)
access to types in an assembly, controlling, Problem, See Also
assemblies
minimizing attack surface of, Problem
preventing malicious modifications to, Problem, See Also
verifying permissions for, Problem, See Also
asserting a permission safely, Problem, See Also
clearing cryptography information after using, Problem
encryption and decryption
of files, Problem, See Also
of strings, Problem, See Also
event logs and, Problem, Discussion
random number generator, Problem
regular expression patterns and, Problem
storing data securely, Problem, See Also
thread-specific data, storing privately, Problem, See Also
verifying strings are uncorrupted during transmission, Problem, See Also, Problem, See Also
SecurityAction enumeration, Solution
SecurityException exception, Solution, Discussion, Discussion, Discussion
SecurityManager class, IsGranted method, Solution
Seek method, FileStream class, Solution
SeekOrigin enumeration, Discussion
SEHException exception, Solution
semicolon (;), on command line, Discussion
separator, determining if character is, Problem, See Also
serializable types, finding in an assembly, Problem, See Also
SerializationException exception, Solution
serializer, choosing, Problem, See Also
server (see web server)
ServerException exception, Solution
Set class, Solution
set objects, Discussion
creating, Problem, See Also
difference of, Problem, Solution, Discussion
equivalence and nonequivalence of, Solution, Discussion
intersection of, Problem, Solution, Discussion
subset of, Solution, Discussion
superset of, Solution, Discussion
union of, Problem, Solution, Discussion
SetCreationTime method
Directory class, Solution
File class, Solution
SetCustomLogMaxSize method, Solution
SetData method, Thread class, Discussion
SetLastAccessTime method
Directory class, Solution
File class, Solution
SetLastWriteTime method
Directory class, Solution
File class, Solution
SetWindowsHookEx function, Discussion
shallow copying, Solution, Discussion
ShallowClone class, Solution
shift and add hash algorithm, The shift and add hash
ShiftAndAddHash method, The shift and add hash
short data type, Numbers
SignedNumber structure, Solution
SignedNumberWithText structure, Solution
significant bits of an integer, determining, Problem
silent thread termination, Problem, See Also
simple factory design pattern, Solution, Discussion
simple hash algorithm, The simple hash
simple types, Numbers, Problem, See Also
SimpleClass class, Discussion
SimpleHash method, The simple hash
Sin method, Math class, Solution
sine function, Discussion
single quotes ('), on command line, Discussion
singleton design pattern, Problem, See Also, Discussion
SkipVerification privilege, Unsafe Code
slash (/), on command line, Discussion
SN.EXE program, Solution
SomeDataOriginator class, Solution
Sort method, Array class and ArrayList class, Problem, See Also
SortedArrayList class, Solution
SortedList class, Collections
(see also collections)
Add method, Discussion, See Also
Contains method, Discussion, See Also
ContainsKey method, Discussion, See Also
ContainsValue method, Discussion, See Also
SourceForge web site, Solution
space, determining if character is, Problem, See Also
SpawnManyThreads method, Solution
Split method
Regex class, Solution
string class, Solution, Discussion, Solution, Discussion
Sqrt method, Math class, Solution
square brackets ([]), balanced, Problem
Square class, Solution
Stack class, Collections
(see also collections)
finding unbalanced strings using, Discussion
snapshot of, Problem
stack trace, obtaining without exception object, Problem, See Also
StackOverflowException exception, Exception Handling, Solution
StackTrace class, iterating through like an array, Problem, See Also
StackTrace method, Environment class, Discussion
StackTrace property, Environment class, Discussion
StackTraceArray class, Solution
standard input, reading from and responding to, Problem
StartInfo property, Process class, Solution
StartsWith method, string class, Solution
static fields
initializing with static constructors, Solution, Discussion
per-thread, Problem, See Also
static methods, when to use, Discussion, Discussion
StatusCode property, HttpWebResponse class, Solution
StreamReader class, Solution, Discussion
Peek method, Solution, Discussion
Read method, Solution, Discussion
ReadBlock method, Solution
ReadLine method, Solution, Solution, Solution, Discussion
ReadToEnd method, Solution, Discussion
streams (see file streams)
StreamWriter class, Solution, Discussion
Write method, Discussion
WriteLine method, Solution, Discussion
string class
Compare method, Solution, Solution
EndsWith method, Solution
Equals method, Solution, Discussion
Format method, Solution, Discussion
IndexOf method, Solution, Solution, Discussion
IndexOfAny method, Solution, Discussion, Solution
Insert method, Solution
Intern method, Solution, See Also
IsInterned method, Solution, See Also
Join method, Solution
Remove method, Solution, Discussion
Replace method, Discussion
Split method, Solution, Discussion, Solution, Discussion
StartsWith method, Solution
ToUpper method, Discussion
Trim method, Solution
TrimEnd method, Solution
TrimStart method, Solution
string concatenation hash algorithm, The string concatenation hash
string data type, Strings and Characters
StringBuilder class, Strings and Characters
Append method, Discussion
Capacity property, Solution, Discussion
constructor for, Solution
EnsureCapacity method, Discussion
improving performance of, Problem, See Also
Insert method, Discussion
Length property, Discussion
Remove method, Discussion
Replace method, Discussion
StringCollection class, Collections
StringDictionary class, Collections
StringReader class, decorating, Solution, Discussion
StringReaderHash class, Solution
strings
array of, formatting as delimited text, Problem
balanced, determining, Problem, See Also
classes represented as, Problem, See Also
comparing, Problem, Problem, See Also
conditionally replacing text within, Problem, See Also
conversions to, Problem, Discussion
converting from pointers to numeric data types, Problem, See Also
converting to value type, Problem, Discussion
counting lines of text in, Problem, See Also
decoding from Base64 to byte array, Problem
delimited, extracting items from, Problem
displaying enumerations as, Problem, See Also
encoding byte array as, Problem
encrypting and decrypting, Problem, See Also
ensuring maximum number of characters in, Problem
formatting data in, Problem, See Also
hash values appended to, Solution, Discussion, Problem, See Also
inserting character or string into, Problem, See Also
interning, Solution, See Also
iterating over characters of, Problem
numeric value in, determining, Problem, Discussion
objects represented by, converting to objects, Problem, See Also
passing to method as byte array, Problem, See Also
performance of, with StringBuilder class, Problem, See Also
removing characters at head or tail of, Problem
removing or replacing characters in, Problem, See Also
replacing text within, Problem, See Also
returning all lines in an ArrayList, Discussion
searching, Problem, See Also, Problem, See Also
finding last matching substring in, Problem
finding specific occurrences of a match, Problem, See Also
groups resulting from, Problem, See Also
searching for characters in, Problem, Discussion, Solution
searching for string at head or tail of, Problem
searching for strings in, Problem, See Also
searching for tokens in, Problem, See Also, Problem, See Also
structures represented as, Problem, See Also
type of characters in, determining, Problem, See Also
verifying they are uncorrupted during transmission, Problem, See Also, Problem, See Also
XML, handling invalid characters in, Problem, See Also
StringWriter class, decorating, Solution, Discussion
strongly typed collections, Discussion
structures, Classes and Structures, Classes and Structures
Equals method for, improving performance of, Problem, See Also
GetHashCode method for, overriding, Discussion
operating as union types, Problem, See Also
performance of, Classes and Structures
polymorphism for, Problem, See Also
represented as a string, Problem, See Also
static fields, initializing, Problem, See Also
stored in arrays
searching, Problem, See Also
sorting, Problem, See Also
strings converted to, Problem, See Also
when to use, Classes and Structures
subset of set objects, Solution, Discussion
SUDSGeneratorException exception, Solution
SUDSParserException exception, Solution
superset of set objects, Solution, Discussion
surrogate character, determining if character is, Problem, See Also
SwapElementsInArray method, Solution
Switch class, custom, Problem, See Also
(see also BooleanSwitch class; TraceSwitch class)
Switch method, Solution
switches element, application configuration file, Discussion
symbol, determining if character is, Problem, See Also
SymmetricAlgorithm class, Solution
Clear method, Solution
SynchronizationLockException exception, Solution
synchronous delegates, converting to asynchronous delegates, Problem, See Also
SyncInvoke delegate, Solution
system requirements for examples in this book, What You Need to Use This Book
System.Collections namespace, Collections
System.Diagnostics namespace, Diagnostics
System.Text.RegularExpressions namespace, Strings and Characters
SystemException exception, Exception Handling, Solution

T

tags, determining if balanced, Problem, See Also
(see also HTML; XML)
TakeSnapshotOfList method, Solution
Tan method, Math class, Solution
tangent function, Discussion
TargetException exception, Solution
TargetInvocationException exception, Solution, Discussion, Solution
TargetParameterCountException exception, Solution
Task class, Solution, Discussion, Discussion
TCP client, creating, Problem
TCP server, creating, Problem, See Also
TcpClient class, Solution, Discussion
TcpListener class, Solution
temperatures
converting Celsius to Fahrenheit, Problem
converting Fahrenheit to Celsius, Problem
ternary operator (?:), Discussion
TestDynamicInvocation method, Solution
TestInit class, Solution
TestMediaABC method, Solution
TestReceivedStringHash method, Solution, Discussion
TestSort method, Discussion, Discussion
TestWatcher method, Solution
text (see characters strings)
theorems for Boolean equations, Solution
Thread class
AllocateDataSlot method, Solution, Discussion
AllocateNamedDataSlot method, Solution, Discussion
FreeNamedDataSlot method, Discussion
GetData method, Discussion
GetNamedDataSlot method, Discussion
Join method, Solution
SetData method, Discussion
thread local storage (TLS), Solution, Discussion
ThreadAbortException exception, Solution
threading, Threading
article about, See Also
asynchronous delegates
notification of completion, Problem, See Also
polling, Problem, See Also
timing out, Problem, See Also
exception event handlers for, Discussion
per-thread static fields, Problem, See Also
silent thread termination, Problem, See Also
synchronizing reading and writing of resources, Problem, See Also
thread pool requests, notification of availability, Problem, See Also
thread-safe access to internal members, Problem, See Also
thread-specific data, storing privately, Problem, See Also
timer, configuring, Problem, See Also
waiting for all threads in pool to finish, Problem
worker thread completion, waiting for, Problem
Threading.Timer class, Solution, See Also
ThreadInterruptedException exception, Solution, Discussion
ThreadPool class
GetAvailableThreads method, Solution, Discussion, Solution
GetMaxThreads method, Solution
timers and, Discussion
ThreadStart delegate, Solution
ThreadStateException exception, Solution, Discussion
ThreadStaticAttribute attribute, Solution, Discussion
ThreadStaticField class, Discussion
ThreadStopException exception, Solution
throw keyword, Solution, Problem
(see also exception handling; exceptions)
tilde (~) (see bitwise complement operator)
time, regular expression patterns for, Solution
TimeOutAsyncDelegate method, Discussion
TimeoutException exception, Discussion
TimeOutWakeAsyncDelegate method, Solution, Discussion
Timer class, Solution, See Also
timer, configuring, Problem, See Also
Timer100Ns counter, Discussion
Timer100nsInverse counter, Discussion
TimerCallback delegate, Discussion
timestamps
of directories, Solution
of files, Solution, Discussion
TLS (thread local storage), Solution, Discussion
ToArray method
DblQueue class, Solution
PriorityQueue class, Solution
ToASCIIByteArray method, Solution
ToBase64CharArray method, Convert class, Solution
ToBoolean method, Convert class, Discussion
ToByte method, Convert class, Discussion
ToChar method, Convert class, Discussion
ToDateTime method, Convert class, Discussion
ToDecimal method, Convert class, Discussion
ToDouble method, Convert class, Discussion
ToInt16 method, Convert class, Discussion
ToInt32 method, Convert class, Solution, Discussion
ToInt64 method, Convert class, Discussion
Tokenize method, Solution
tokenizers, Problem, See Also, Problem, See Also
tokens, breaking strings into, Problem, See Also, Problem, See Also
ToSByte method, Convert class, Discussion
ToSingle method, Convert class, Discussion
ToString method, Problem, See Also, Discussion, Discussion
formatting with, Discussion
using with enumerations, Solution, Discussion
using with exceptions, Solution, Solution, Discussion
ToUInt16 method, Convert class, Discussion
ToUInt32 method, Convert class, Discussion
ToUInt64 method, Convert class, Discussion
ToUnicodeByteArray method, Solution
ToUpper method, string class, Discussion
Trace class, Diagnostics
(see also Debug class)
interchanging with Debug class, Diagnostics
TRACE directive, Discussion
trace element, application configuration file, Discussion
Traceable class, Discussion, Solution
TraceFactory class, Solution
TraceListener class, Solution, Solution
TraceSwitch class, Solution, Discussion, Problem
tracing, Diagnostics
(see also debugging)
configuration file to turn on, Solution, Discussion
customizing levels for, Problem, See Also
enabling for specific components, Problem, See Also
generating code for during object creation, Problem, Discussion
output from production application, Problem, Discussion
selecting levels of, Solution, Discussion
stack trace, Problem, See Also
XML output for, Problem, See Also
Transform method, XslTransform class, Discussion
TransformXML method, Solution
trees, Discussion
(see also binary trees; n-ary trees)
TreeSize property, BinaryTree class, Solution
triangles
calculating length of a side for, Problem
calculating one angle of, Problem
trigonometric functions
calculating an angle of right triangle using, Discussion
calculating length of a side of right triangle using, Discussion
converting degrees to radians for, Problem
converting radians to degrees for, Problem
Trim method, string class, Solution
TrimEnd method, string class, Solution
TrimStart method, string class, Solution
TrimToSize method
DblQueue class, Solution
PriorityQueue class, Solution
TripleDES algorithm, Solution, Discussion
try-catch blocks (see catch blocks)
try-catch-finally blocks (see catch blocks finally blocks)
try-finally blocks (see finally blocks)
TryEnter method, Monitor class, Discussion
TryParse method, Solution
TurnBitOff method, Solution
TurnBitOn method, Solution
two-dimensional arrays, reversing, Problem
Type class
FindInterfaces method, Solution
FindMembers method, Solution
Get methods, Solution
GetInterface method, Problem
GetInterfaces method, Problem
GetMember method, Problem, Solution, Discussion, Discussion
GetMembers method, Problem
GetType method, Discussion
IsSubclassOf method, Solution
searching for interfaces with, Problem, See Also
searching for members with, Problem, See Also
TypeFilter delegate, Solution, Discussion
TypeInformation privilege, Reflection, Discussion
TypeInitializationException exception, Solution, Problem, See Also
TypeLoadException exception, Solution
types
inheritance hierarchies of, in assemblies, Problem, See Also
nested, finding in assembly, Problem, See Also
serializable, finding in an assembly, Problem, See Also
simple, Problem, See Also
subclasses of, in an assembly, Problem, See Also
TypeUnloadedException exception, Solution

U

uint data type, Numbers
ulong data type, Numbers
UnauthorizedAccessException exception, Solution, Discussion
unchecked context, Discussion, Discussion
unchecked keyword, Discussion
UnhookWindowsHookEx function, Discussion
UnicodeEncoding class
GetBytes method, Solution
GetString method, Discussion
Uniform Resource Identifier (see URI)
union of set objects, Problem, Solution, Discussion
union types, structures similar to, Problem, See Also
UnionOf method, Set class, Solution, Discussion
Unlock method, FileStream class, Discussion
unmanaged resources, disposing of, Problem, See Also
unnamed groups in regular expressions, Discussion
unsafe code, Unsafe Code
(see also managed code)
arrays of pointers, Problem, See Also
arrays of pointers to unknown types, Problem, See Also
breaking large numbers into byte arrays, Problem
converting pointers to numeric data types to strings, Problem, See Also
navigating arrays with pointers, Problem, See Also
pointers passed to methods, controlling changes to, Problem, See Also
pointers to fixed arrays, manipulating, Problem
pointers, comparing, Problem
returning pointers to an element in an array, Problem, See Also
unknown pointer types, switching, Problem, See Also
UploadValues method, WebClient class, Solution, Discussion
URI (Uniform Resource Identifier)
absolute, forming from base and relative URI, Problem
parsing, Problem, See Also
Uri class, Solution, Discussion, Solution
UriFormatException exception, Discussion, Discussion
URL
obtaining HTML from, Problem
reading XML data from, Problem
UseChecked method, Solution
UseMedia method, Solution
UserSettings class, Solution
ushort data type, Numbers
using statement, Solution
UsingAnUnmanagedFileHandle method, Solution
UTF-16 encoded values (see Unicode values)

V

ValidateXML method, Solution
ValidShape enumeration, Solution
Value method, BinaryTreeNode class, Solution
Value method, NTreeNode class, Solution
value types
converting strings to, Problem, Discussion
unsafe code and, Unsafe Code
Values property, Hashtable class, Solution, Discussion
variable, type of, determining, Problem, See Also
vector array, Discussion
VerificationException exception, Solution
VerifyRegEx method, Solution
VerifyResponse method, Solution, Discussion
versioning, implementing with multiple entry points, Problem, See Also
versions, comparing for executable modules, Problem, See Also
ViewModifyDirAttr method, Solution
ViewModifyFileAttr method, Solution
Visual Basic .NET, compared to C#, Preface
Visual Studio .NET
books about, What Was Left Out
requirements for code samples in this book, What You Need to Use This Book
versions used for this book, Platform Notes
void pointers, Solution, Solution, Discussion

W

WaitForChanged method, FileSystemWatcher class, Solution, Discussion
WaitForChangedResult structure, Discussion
WaitForZipCreation method, Solution
WaitOne method, WaitHandle class, Solution, Discussion
WarningException exception, Discussion
WatchForAppEvent method, Solution
WeakReferenceException exception, Solution
web proxy, accessing Internet through, Problem, See Also
web server
downloading data from, Problem
errors from, handling, Problem, See Also
sending GET or POST request to, Problem, See Also
web sites
C# sample code, Preface
C# sample code for this book, Who This Book Is For
for this book, Comments and Questions
MSDN Library, What Was Left Out
O’Reilly & Associates, Comments and Questions
profiling tools, See Also
reading XML data from, Problem
SourceForge, Log4Net software, Solution
Visual Studio .NET version differences, Platform Notes
WebClient class
DownloadData method, Solution
DownloadFile method, Solution
UploadValues method, Solution, Discussion
WebException exception, Discussion
WebProxy class, Solution
WebRequest class, Solution, Discussion
WebResponse class, Discussion
whitespace, determining if character is, Problem, See Also
WH_KEYBOARD hook, Solution, See Also
wildcard character (*), Discussion
wildcards
searching for files or directories using, Problem, See Also
searching for members in assembly using, Problem, See Also
Windows keyboard hook, Problem, See Also
Windows NT 4.0, ASP.NET and .NET web services not supported for, What You Need to Use This Book
Windows operating system, requirements for code samples in this book, What You Need to Use This Book
words, breaking up strings into, Problem, See Also, Problem, See Also
Worker class, Solution
Write method
BinaryWriter class, Discussion
FileStream class, Discussion
StreamWriter class, Discussion
WriteByte method, FileStream class, Discussion
WriteCData method, XmlTextWriter class, Solution
WriteElementString method, XmlTextWriter class, Solution
WriteLine method
formatting data using, Solution
newline characters and, Solution
StreamWriter class, Solution, Discussion
writing to multiple files using, Solution
WriteNodeInfo method, Solution
WriterDecorator class, Solution, Discussion
WriteToFileHandle method, Solution
WriteToLog method, Solution

X

XDR schema, validating XML conformance to, Problem, See Also
XML (Extensible Markup Language), XML
breaking into constituent parts, Problem, See Also
constructing from separate constituent pieces, Problem, See Also
converting to HTML, Problem, See Also
creating programmatically, Problem, See Also
DOM model for, Discussion
exceptions for, Discussion
finding tags in an XML string, Solution
invalid characters in, handling, Problem, See Also
Log4Net logging software for, Solution
querying contents of, Problem, See Also
reading XML data from the web, Problem
reading XML data in document order, Problem, See Also
tags, checking if balanced, Problem, See Also
trace output using, Problem, See Also
tracking changes to, Problem, See Also
validating conformance to a schema, Problem, See Also
XML configuration file (see application configuration file)
XmlAttributes class, Discussion
XmlDocument class, Solution
assembling an XML document using, Solution, Discussion
breaking apart an XML document using, Solution
constructing XML data using, Solution
handling invalid characters with, Solution
when to use, XML, Discussion, Discussion
XmlElement class, Solution, Discussion
XmlException exception, Discussion
XmlNode class, Clone method, Discussion
XmlResolver class, Discussion
XmlSchemaCollection class, Discussion
XmlSecureResolver class, Discussion
XmlTextReader class, XML, Solution, Solution, Discussion, Discussion
XmlTextWriter class, XML, Solution, Discussion
WriteCData method, Solution
WriteElementString method, Solution
XMLTraceListener class, Solution
XmlUrlResolver class, Discussion
XmlValidatingReader class, Solution, Discussion
XPath, querying XML data using, Solution
XPathDocument class, Solution
XPathNavigator class, Solution
XPathNodeIterator class, Solution
XSD schema, validating XML conformance to, Problem, See Also
XSLT stylesheet, transforming XML using, Solution, Discussion
XslTransform class, Solution, Discussion

Z

zip code, regular expression patterns for, Solution
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.136.233.153