Book description
C# in a Nutshell provides everything programmers need to know about the C# language in one concise and accessible volume. Designed as a primary reference for daily use, it also includes all the essential background information to become productive quickly. Not a "how-to" book or a rehash of Microsoft's documentation, this book goes to the source of the C# language and the APIs of the .NET Framework to present the content in a way that professional programmers will value above all other books. Brief introductions to the language and .NET runtime provide the needed preparation for programming with the C# language, whose keywords and syntax are then detailed in subsequent chapters. Next, C# in a Nutshell presents key namespaces and types of the .NET Framework base class library which provides much of the functionality and power of the language. Using C# examples, the .NET Framework covers each core area, including:
Strings
Collections
XML
Networking
Input/Output
Serialization
Assemblies
Reflection
Custom Attributes
Memory Management
Threading
Integrating with Native DLLs
Integrating with COM Components
Diagnostics
Determined to provide even more value, C# in a Nutshell moves into a comprehensive language reference, plus syntax, XML documentation tags, naming and coding conventions, and the various C# development tools--the kind of reference material programmers will use every day. Next, an extensive and quick reference to the API is presented, featuring the System namespace. Particularly useful are the many figures and tables that present the main features of the namespace. For those looking create alternatives to Microsoft's implementation of the C# Programming Language and the Common Language Infrastructure as submitted to ECMA (an international standards organization), each element included in the ECMA submission is clearly labeled. Finally, the entire reference is based on Version 1 of the .NET Framework and generated by tools written in the C# language itself. Every once in a while, a book becomes the de-facto standard for a technology, operating system, or programming language--which is exactly what C# in a Nutshell aims to do in a single straightforward and easy to use volume.
Table of contents
-
C# in a Nutshell
- Preface
-
I. Programming with C#
- 1. Introducing C# and the .NET Framework
- 2. C# Language Basics
-
3. Creating Types in C#
- Classes
- Inheritance
- Access Modifiers
- Structs
- Interfaces
- Enums
- 4. Advanced C# Features
-
II. Programming with the .NET Framework
-
5. Framework Class Library Overview
- Core Types
- Text
- Collections
- Streams and I/O
- Networking
- Threading
- Security
- Reflection and Metadata
- Assemblies
- Serialization
- Remoting
- Web Services
- Data Access
- XML
- Graphics
- Rich Client Applications
- Web-Based Applications
- Globalization
- Configuration
- Advanced Component Services
- Diagnostics and Debugging
- Interoperating with Unmanaged Code
- Compiler and Tool Support
- Runtime Facilities
- Native OS Facilities
- Undocumented Types
- 6. String Handling
- 7. Collections
- 8. XML I/O
- 9. Networking
- 10. Streams and I/O
- 11. Serialization
- 12. Assemblies
- 13. Reflection
- 14. Custom Attributes
- 15. Memory Management
- 16. Threading
- 17. Integrating with Native DLLs
- 18. Integrating with COM Components
- 19. Diagnostics
-
5. Framework Class Library Overview
- III. Language and Tools Reference
-
IV. API Quick Reference
- 24. How to Use This Quick Reference
-
25. Microsoft.Win32
- PowerModeChangedEventArgs
- PowerModeChangedEventHandler
- PowerModes
- Registry
- RegistryHive
- RegistryKey
- SessionEndedEventArgs
- SessionEndedEventHandler
- SessionEndingEventArgs
- SessionEndingEventHandler
- SessionEndReasons
- SystemEvents
- TimerElapsedEventArgs
- TimerElapsedEventHandler
- UserPreferenceCategory
- UserPreferenceChangedEventArgs
- UserPreferenceChangedEventHandler
- UserPreferenceChangingEventArgs
- UserPreferenceChangingEventHandler
-
26. System
- Activator
- AppDomain
- AppDomainSetup
- AppDomainUnloadedException
- ApplicationException
- ArgIterator
- ArgumentException class
- ArgumentNullException
- ArgumentOutOfRangeException
- ArithmeticException
- Array
- ArrayTypeMismatchException
- AssemblyLoadEventArgs
- AssemblyLoadEventHandler
- AsyncCallback
- Attribute
- AttributeTargets
- AttributeUsageAttribute
- BadImageFormatException
- BitConverter
- Boolean
- Buffer
- Byte
- CannotUnloadAppDomainException
- Char
- CharEnumerator
- CLSCompliantAttribute
- Console
- ContextBoundObject
- ContextMarshalException
- ContextStaticAttribute
- Convert
- CrossAppDomainDelegate
- DateTime
- DayOfWeek
- DBNull
- Decimal
- Delegate
- DivideByZeroException
- DllNotFoundException
- Double
- DuplicateWaitObjectException
- EntryPointNotFoundException
- Enum
- Environment
- Environment.SpecialFolder
- EventArgs
- EventHandler
- Exception
- ExecutionEngineException
- FieldAccessException
- FlagsAttribute
- FormatException
- GC
- Guid
- IAsyncResult
- ICloneable
- IComparable
- IConvertible
- ICustomFormatter
- IDisposable
- IFormatProvider
- IFormattable
- IndexOutOfRangeException
- Int16
- Int32
- Int64
- IntPtr
- InvalidCastException
- InvalidOperationException
- InvalidProgramException
- IServiceProvider
- LoaderOptimization
- LoaderOptimizationAttribute
- LocalDataStoreSlot
- MarshalByRefObject
- Math
- MemberAccessException
- MethodAccessException
- MissingFieldException
- MissingMemberException
- MissingMethodException
- MTAThreadAttribute
- MulticastDelegate
- MulticastNotSupportedException
- NonSerializedAttribute
- NotFiniteNumberException
- NotImplementedException
- NotSupportedException
- NullReferenceException
- Object
- ObjectDisposedException
- ObsoleteAttribute
- OperatingSystem
- OutOfMemoryException
- OverflowException
- ParamArrayAttribute
- PlatformID
- PlatformNotSupportedException
- Random
- RankException
- ResolveEventArgs
- ResolveEventHandler
- RuntimeTypeHandle
- SByte
- SerializableAttribute
- Single
- StackOverflowException
- STAThreadAttribute
- String
- SystemException
- ThreadStaticAttribute
- TimeSpan
- TimeZone
- Type
- TypeCode
- TypeInitializationException
- TypeLoadException
- TypeUnloadedException
- UInt16
- UInt32
- UInt64
- UIntPtr
- UnauthorizedAccessException
- UnhandledExceptionEventArgs
- UnhandledExceptionEventHandler
- Uri
- UriBuilder
- UriFormatException
- UriHostNameType
- UriPartial
- ValueType
- Version
- Void
- WeakReference
- 27. System.Collections
- 28. System.Collections.Specialized
-
29. System.Diagnostics
- BooleanSwitch
- ConditionalAttribute
- CounterCreationData
- CounterCreationDataCollection
- CounterSample
- CounterSampleCalculator
- Debug
- DebuggableAttribute
- Debugger
- DebuggerHiddenAttribute
- DebuggerStepThroughAttribute
- DefaultTraceListener
- EntryWrittenEventArgs
- EntryWrittenEventHandler
- EventLog
- EventLogEntry
- EventLogEntryCollection
- EventLogEntryType
- EventLogInstaller
- EventLogPermission
- EventLogPermissionAccess
- EventLogPermissionAttribute
- EventLogPermissionEntry
- EventLogPermissionEntryCollection
- EventLogTraceListener
- FileVersionInfo
- InstanceData
- InstanceDataCollection
- InstanceDataCollectionCollection
- MonitoringDescriptionAttribute
- PerformanceCounter
- PerformanceCounterCategory
- PerformanceCounterInstaller
- PerformanceCounterPermission
- PerformanceCounterPermissionAccess
- PerformanceCounterPermissionAttribute
- PerformanceCounterPermissionEntry
- PerformanceCounterPermissionEntryCollection
- PerformanceCounterType
- Process
- ProcessModule
- ProcessModuleCollection
- ProcessPriorityClass
- ProcessStartInfo
- ProcessThread
- ProcessThreadCollection
- ProcessWindowStyle
- StackFrame
- StackTrace
- Switch
- TextWriterTraceListener
- ThreadPriorityLevel
- ThreadState
- ThreadWaitReason
- Trace
- TraceLevel
- TraceListener
- TraceListenerCollection
- TraceSwitch
-
30. System.Globalization
- Calendar
- CalendarWeekRule
- CompareInfo
- CompareOptions
- CultureInfo
- CultureTypes
- DateTimeFormatInfo
- DateTimeStyles
- DaylightTime
- GregorianCalendar
- GregorianCalendarTypes
- HebrewCalendar
- HijriCalendar
- JapaneseCalendar
- JulianCalendar
- KoreanCalendar
- NumberFormatInfo
- NumberStyles
- RegionInfo
- SortKey
- StringInfo
- TaiwanCalendar
- TextElementEnumerator
- TextInfo
- ThaiBuddhistCalendar
- UnicodeCategory
-
31. System.IO
- BinaryReader
- BinaryWriter
- BufferedStream
- Directory
- DirectoryInfo
- DirectoryNotFoundException
- EndOfStreamException
- ErrorEventArgs
- ErrorEventHandler
- File
- FileAccess
- FileAttributes
- FileInfo
- FileLoadException
- FileMode
- FileNotFoundException
- FileShare
- FileStream
- FileSystemEventArgs
- FileSystemEventHandler
- FileSystemInfo
- FileSystemWatcher
- InternalBufferOverflowException
- IODescriptionAttribute
- IOException
- MemoryStream
- NotifyFilters
- Path
- PathTooLongException
- RenamedEventArgs
- RenamedEventHandler
- SeekOrigin
- Stream
- StreamReader
- StreamWriter
- StringReader
- StringWriter
- TextReader
- TextWriter
- WaitForChangedResult
- WatcherChangeTypes
- 32. System.IO.IsolatedStorage
-
33. System.Net
- AuthenticationManager
- Authorization
- Cookie
- CookieCollection
- CookieContainer
- CookieException
- CredentialCache
- Dns
- DnsPermission
- DnsPermissionAttribute
- EndPoint
- EndpointPermission
- FileWebRequest
- FileWebResponse
- GlobalProxySelection
- HttpContinueDelegate
- HttpStatusCode
- HttpVersion
- HttpWebRequest
- HttpWebResponse
- IAuthenticationModule
- ICertificatePolicy
- ICredentials
- IPAddress
- IPEndPoint
- IPHostEntry
- IWebProxy
- IWebRequestCreate
- NetworkAccess
- NetworkCredential
- ProtocolViolationException
- ServicePoint
- ServicePointManager
- SocketAddress
- SocketPermission
- SocketPermissionAttribute
- TransportType
- WebClient
- WebException
- WebExceptionStatus
- WebHeaderCollection
- WebPermission
- WebPermissionAttribute
- WebProxy
- WebRequest
- WebResponse
- 34. System.Net.Sockets
-
35. System.Reflection
- AmbiguousMatchException
- Assembly
- AssemblyAlgorithmIdAttribute
- AssemblyCompanyAttribute
- AssemblyConfigurationAttribute
- AssemblyCopyrightAttribute
- AssemblyCultureAttribute
- AssemblyDefaultAliasAttribute
- AssemblyDelaySignAttribute
- AssemblyDescriptionAttribute
- AssemblyFileVersionAttribute
- AssemblyFlagsAttribute
- AssemblyInformationalVersionAttribute
- AssemblyKeyFileAttribute
- AssemblyKeyNameAttribute
- AssemblyName
- AssemblyNameFlags
- AssemblyNameProxy
- AssemblyProductAttribute
- AssemblyTitleAttribute
- AssemblyTrademarkAttribute
- AssemblyVersionAttribute
- Binder
- BindingFlags
- CallingConventions
- ConstructorInfo
- CustomAttributeFormatException
- DefaultMemberAttribute
- EventAttributes
- EventInfo
- FieldAttributes
- FieldInfo
- ICustomAttributeProvider
- InterfaceMapping
- InvalidFilterCriteriaException
- IReflect
- ManifestResourceInfo
- MemberFilter
- MemberInfo
- MemberTypes
- MethodAttributes
- MethodBase
- MethodImplAttributes
- MethodInfo
- Missing
- Module
- ModuleResolveEventHandler
- ParameterAttributes
- ParameterInfo
- ParameterModifier
- Pointer
- PropertyAttributes
- PropertyInfo
- ReflectionTypeLoadException
- ResourceAttributes
- ResourceLocation
- StrongNameKeyPair
- TargetException
- TargetInvocationException
- TargetParameterCountException
- TypeAttributes
- TypeDelegator
- TypeFilter
-
36. System.Reflection.Emit
- AssemblyBuilder
- AssemblyBuilderAccess
- ConstructorBuilder
- CustomAttributeBuilder
- EnumBuilder
- EventBuilder
- EventToken
- FieldBuilder
- FieldToken
- FlowControl
- ILGenerator
- Label
- LocalBuilder
- MethodBuilder
- MethodRental
- MethodToken
- ModuleBuilder
- OpCode
- OpCodes
- OpCodeType
- OperandType
- PackingSize
- ParameterBuilder
- ParameterToken
- PEFileKinds
- PropertyBuilder
- PropertyToken
- SignatureHelper
- SignatureToken
- StackBehaviour
- StringToken
- TypeBuilder
- TypeToken
- UnmanagedMarshal
-
37. System.Runtime.InteropServices
- ArrayWithOffset
- AssemblyRegistrationFlags
- CallingConvention
- CharSet
- ClassInterfaceAttribute
- ClassInterfaceType
- CoClassAttribute
- ComAliasNameAttribute
- ComConversionLossAttribute
- COMException
- ComImportAttribute
- ComInterfaceType
- ComMemberType
- ComRegisterFunctionAttribute
- ComSourceInterfacesAttribute
- ComUnregisterFunctionAttribute
- ComVisibleAttribute
- CurrencyWrapper
- DispatchWrapper
- DispIdAttribute
- DllImportAttribute
- ErrorWrapper
- ExtensibleClassFactory
- ExternalException
- FieldOffsetAttribute
- GCHandle
- GCHandleType
- GuidAttribute
- HandleRef
- IDispatchImplAttribute
- IDispatchImplType
- InAttribute
- InterfaceTypeAttribute
- InvalidComObjectException
- InvalidOleVariantTypeException
- IRegistrationServices
- LayoutKind
- LCIDConversionAttribute
- Marshal
- MarshalAsAttribute
- MarshalDirectiveException
- ObjectCreationDelegate
- OptionalAttribute
- OutAttribute
- PreserveSigAttribute
- ProgIdAttribute
- RegistrationServices
- RuntimeEnvironment
- SafeArrayRankMismatchException
- SafeArrayTypeMismatchException
- SEHException
- StructLayoutAttribute
- UnknownWrapper
- UnmanagedType
- VarEnum
- IExpando
-
38. System.Runtime.Serialization
- Formatter
- FormatterConverter
- FormatterServices
- IDeserializationCallback
- IFormatter
- IFormatterConverter
- IObjectReference
- ISerializable
- ISerializationSurrogate
- ISurrogateSelector
- ObjectIDGenerator
- ObjectManager
- SerializationBinder
- SerializationEntry
- SerializationException
- SerializationInfo
- SerializationInfoEnumerator
- StreamingContext
- StreamingContextStates
- SurrogateSelector
- 39. System.Runtime.Serialization.Formatters
- 40. System.Text
- 41. System.Text.RegularExpressions
-
42. System.Threading
- ApartmentState
- AutoResetEvent
- Interlocked
- IOCompletionCallback
- LockCookie
- ManualResetEvent
- Monitor
- Mutex
- NativeOverlapped
- Overlapped
- ReaderWriterLock
- RegisteredWaitHandle
- SynchronizationLockException
- Thread
- ThreadAbortException
- ThreadExceptionEventArgs
- ThreadExceptionEventHandler
- ThreadInterruptedException
- ThreadPool
- ThreadPriority
- ThreadStart
- ThreadState
- ThreadStateException
- Timeout
- Timer
- TimerCallback
- WaitCallback
- WaitHandle
- WaitOrTimerCallback
- 43. System.Timers
-
44. System.Xml
- EntityHandling
- Formatting
- IHasXmlNode
- IXmlLineInfo
- NameTable
- ReadState
- ValidationType
- WhitespaceHandling
- WriteState
- XmlAttribute
- XmlAttributeCollection
- XmlCDataSection
- XmlCharacterData
- XmlComment
- XmlConvert
- XmlDataDocument
- XmlDeclaration
- XmlDocument
- XmlDocumentFragment
- XmlDocumentType
- XmlElement
- XmlEntity
- XmlEntityReference
- XmlException
- XmlImplementation
- XmlLinkedNode
- XmlNamedNodeMap
- XmlNamespaceManager
- XmlNameTable
- XmlNode
- XmlNodeChangedAction
- XmlNodeChangedEventArgs
- XmlNodeChangedEventHandler
- XmlNodeList
- XmlNodeOrder
- XmlNodeReader
- XmlNodeType
- XmlNotation
- XmlParserContext
- XmlProcessingInstruction
- XmlQualifiedName
- XmlReader
- XmlResolver
- XmlSignificantWhitespace
- XmlSpace
- XmlText
- XmlTextReader
- XmlTextWriter
- XmlTokenizedType
- XmlUrlResolver
- XmlValidatingReader
- XmlWhitespace
- XmlWriter
- 45. System.Xml.XPath
- 46. System.Xml.Xsl
- V. Appendixes
- Index
- Colophon
Product information
- Title: C# in a Nutshell
- Author(s):
- Release date: March 2002
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9780596001810
You might also like
book
C# 7.0 in a Nutshell
When you have questions about C# 7.0 or the .NET CLR and its core Framework assemblies, …
book
C# 8.0 in a Nutshell
When you have questions about C# 8.0 or .NET Core, this best-selling guide has the answers …
book
C# 9.0 in a Nutshell
When you have questions about C# 9.0 or .NET 5, this best-selling guide has the answers …
book
C# in a Nutshell, Second Edition
C# in a Nutshell provides C# programmers with a concise and thorough reference to the language …