C# Basic Demos

introductory C# language demos

These demonstration programs started as basic demos for classes at Syracuse University. I've added a few intermediate examples including: Reflection, Dynamic Link Libraries, serialization, and threads.
Directory Description
Collections/ Multi-module program using arrays, SortedList, Hashtable, and List<T>
Conversions/ String-to-type and type-to-type conversions via ToString(), Parse(), and Convert
CSharpDemos/ Class definitions, encapsulation, properties, constructors, and object identity
CSharpExamples/ Single and multi-dimensional array creation, iteration, and manipulation
CSharpSyntax/ Four equivalence tests: ReferenceEquals, static Equals, instance Equals, operator==
CsReflection/ Extracts assembly metadata, modules, types, and file info using System.Reflection
Delegates-using/ Traditional delegates, anonymous delegates, lambda expressions, and Func<T>
DynamicLinkLibraries/ Implicit and explicit DLL loading via reflection and interfaces
ExtensionMethods/ Adds custom methods to existing types (Object, IEnumerable) via extension syntax
LambdaCapture/ Lambda expressions capturing local variables and transporting scope for deferred execution
LambdaDemo/ Delegate internals, lambda expressions, and reflection to inspect lambda type details
LinqExamples/ LINQ queries on XDocument with WPF data binding to collections
LinqQueryExamples/ LINQ to Objects — query syntax, method chaining, filtering, ordering, and projection
MethodParamDemo/ By-value vs. by-reference parameter passing for value types and reference types
NetContainers/ ArrayList capacity management, sorting, searching, and insertion/removal
TestDeserialization/ Serializable Message class with XML parsing for building and parsing messages
ThreadsAndTasks/ Thread creation with parameters, lambda capture in threads, and concurrent execution
ThreadTechniques/ BlockingQueue using monitors and locks for thread-safe producer/consumer communication