.NET Core
Edit
.NET Framework
Edit
- http://www.microsoft.com/net
- Desc. : a software framework developed by Microsoft that runs primarily on Microsoft Windows.
- References
- .NET Framework 4.6 and 4.5 Class Library
- .NET Framework 4 Class Library
-
System.Collections.Generic
Namespace -
System.ComponentModel.DataAnnotations
Namespace-
[Range], [Required], [Validation], ...
-
-
- Readings
- .NET Framework (Wikipedia)
- Common Language Runtime(CLR) (Wikipedia)
- the virtual machine component of Microsoft's .NET framework, manages the execution of .NET programs
- Common Language Infrastructure(CLI) (Wikipedia)
- an open specification developed by Microsoft and standardized by ISO and ECMA that describes executable code and a runtime environment that allow multiple high-level languages to be used on different computer platforms without being rewritten for specific architectures.
- Version Compatibility in the .NET Framework
- How to: Determine Which .NET Framework Versions Are Installed
- Installing the .NET Framework
- Microsoft .NET Framework 3.5 Deployment Considerations
- .NET Framework 3.5 is not included by default in Windows® 8 or Windows Server® 2012
- .NET Framework Client Profile
Windows SDK
Edit
- https://en.wikipedia.org/wiki/Microsoft_Windows_SDK
- Desc. : supports developing applications for Windows XP, Windows Vista, Windows 7, Windows 8, Windows Server 2008, .NET Framework 3.0, .NET Framework 3.5, and .NET Framework 4.0.
- Downloads
COM Interop
Edit
- COM Interop Tutorials
- COM Interop Part 2: C# Server Tutorial
- Exposing .NET Framework Components to COM
- How to call a managed DLL from native Visual C++ code in Visual Studio.NET or in Visual Studio 2005 (maybe out of date)
C++/CLI
Edit
- .NET Programming with C++/CLI
- Quick C++/CLI - Learn C++/CLI in less than 10 minutes (26 Jun 2007)
- Mixing Native and Managed Types in C++ (July 12, 2005)
- Using and extending the Orcas
marshal_as
library (12 Jul 2007)
WMI.NET
Edit
- WMI .NET Overview
- How To: Provide Management Data
- Writing coupled WMI providers using WMI.NET Provider Extension 2.0
Frameworks
Edit
UI
Edit
WPF
Edit
- https://msdn.microsoft.com/en-us/library/ms754130.aspx
- Desc. : a next-generation presentation system for building Windows client applications with visually stunning user experiences
- Readings
- API
- .NET Framework 4.5 and 4.6 Class Library
-
System.Windows Namespaces
- The System.Windows namespaces contain types used in Windows Presentation Foundation (WPF) applications, including animation clients, user interface controls, data binding, and type conversion.
Object Model
Edit
COM
Edit
IoC
Edit
Unity
Edit
- https://msdn.microsoft.com/library/ff647202.aspx
- Desc. : a lightweight, extensible dependency injection container with optional support for instance and type interception
- License : Microsoft Public License (Ms-PL)
- Sources :
- Readings
Data Access/OR Mapping
Edit
ADO
Edit
- ADOX Fundamentals
- ADOX includes objects for schema creation and modification, as well as security.
- Microsoft OLE DB Provider for Microsoft Jet
- Using ADOX with ADO.NET (Mar 11, 2010)
MyBatis.NET
Edit
- https://code.google.com/archive/p/mybatisnet/
- Desc. :
- License :
- Readings
Networking
Edit
Nancy
Edit
- http://nancyfx.org/
- Desc. : a lightweight, low-ceremony, framework for building HTTP based services on .Net and Mono
- License : MIT
- Sources : https://github.com/NancyFx/Nancy
- Readings
Akka.NET
Edit
- http://getakka.net/
- Desc. : a toolkit and runtime for building highly concurrent, distributed, and fault tolerant event-driven applications on .NET & Mono.
- License : Apache 2 license
- Sources : https://github.com/akkadotnet/akka.net/
- Readings
Logging
Edit
log4net
Edit
- http://logging.apache.org/log4net/
- Desc. : a tool to help the programmer output log statements to a variety of output targets
- License :
- Readings
NLog
Edit
- http://nlog-project.org/
- Desc. : a free logging platform for .NET, Silverlight and Windows Phone with rich log routing and management capabilities
- License : BSD license
- Sources : https://github.com/NLog/NLog/
- Readings
Testing
Edit
NUnit
Edit
- http://www.nunit.org/
- Desc. : a unit-testing framework for all .Net languages
- License : MIT license
- Sources : https://github.com/nunit/nunit
- Readings
XMLUnit
Edit
- http://xmlunit.sourceforge.net/
- Desc. : JUnit and NUnit testing for XML
Libraries
Edit
Fundamental
Edit
EasyHook
Edit
- https://easyhook.github.io/
- Desc. : makes it possible to extend (via hooking) unmanaged code APIs with pure managed functions, from within a fully managed environment
- License : MIT license
- Sources : https://github.com/EasyHook/EasyHook
Smart Thread Pool
Edit
- https://smartthreadpool.codeplex.com/
- Desc. : a thread pool written in C#.
- License : "Microsoft Public License":https://smartthreadpool.codeplex.com/license
- Sources : https://github.com/amibar/SmartThreadPool
SharpZipLib
Edit
- http://icsharpcode.github.io/SharpZipLib/
- Desc. : a Zip, GZip, Tar and BZip2 library written entirely in C# for the .NET platform.
- License : GPL
Image Processing
Edit
OpenCvSharp
Edit
- https://github.com/shimat/opencvsharp
- Desc. : Cross platform wrapper of OpenCV for .NET Framework.
- License : BSD License
Emgu CV
Edit
- http://www.emgu.com/
- Desc. : a cross platform .Net wrapper to the OpenCV image processing library.
- License : Dual License - GNU GPL license v3 or Commercial License
Vlc.DotNet
Edit
- https://github.com/ZeBobo5/Vlc.DotNet
- Desc. : .NET control that hosts the audio/video capabilities of the VLC libraries
- License : MIT
Graphics
Edit
SlimDX
Edit
- https://www.slimdx.org/
- Desc. : a free open source framework that enables developers to easily build DirectX applications using .NET technologies such as C#, VB.NET, and IronPython.
- License : MIT license
- Sources : https://code.google.com/archive/p/slimdx/source
- Readings
Tools
Edit
IDE
Edit
Visual Studio
Edit
- Readings
Visual Studio Express
Edit
- http://www.microsoft.com/express
- Desc. : a set of freeware integrated development environments (IDE) developed by Microsoft that are lightweight versions of the Microsoft Visual Studio product line.
- References
- Visual C++ 2010 Compiler Options Listed by Category
- For Visual Studio, compiler options are case-sensitive but linker options are case-insensitive
- Visual C++ 2010 Setting Compiler Options/CL Environment Variables
- Visual C++ 2010 Compiler Options Listed by Category
- Downloads
Visual Studio Addons/Extensions/Plugins
Edit
- Microsoft Visual Studio 2015 Language Pack
- switch the language that's displayed in the Visual Studio user interface.
- Markdown Mode
- Desc. : provides support for editing files that use the Markdown syntax.
- License : Microsoft Public License
- Visual Studio Spell Checker
- Desc. : checks the spelling of comments, strings, and plain text as you type or interactively with a tool window.
- License : Microsoft Public License
MonoDevelop
Edit
- http://monodevelop.com/
- Desc.: an IDE primarily designed for C# and other .NET languages.
- License : LGPLv2
SharpDevelop
Edit
- http://www.icsharpcode.net/opensource/sd/
- Desc. : a free IDE for C#, VB.NET and Boo projects on Microsoft's .NET platform.
- License : GPLv2, LGPLv2
- Sources : https://github.com/icsharpcode/SharpDevelop
- Readings
Decompiler
Edit
- Something Better than .NET Reflector?(Stack Overflow, Apr 15 '10)
ILSpy
Edit
- http://ilspy.net/
- Desc. : the open-source .NET assembly browser and decompiler
- License
Dependency Walker
Edit
- http://www.dependencywalker.com/
- Desc. : a free utility that scans any 32-bit or 64-bit Windows module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of all dependent modules.
- License :
- Readings
Monitoring and Diagnostic
Edit
Visual Studio 2008 Service Pack 1 Stand-Alone Profiler
Edit
WPF Performance Suite
Edit
- https://msdn.microsoft.com/en-us/library/aa969767.aspx
- Desc. : enables you to analyze the run-time behavior of your WPF applications and determine performance optimizations that you can apply
Process Explorer
Edit
- https://technet.microsoft.com/en-us/sysinternals/processexplorer.aspx
- Desc. : shows you information about which handles and DLLs processes have opened or loaded.
Debugging
Edit
DebugView
Edit
- http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx
- Desc. : an application that lets you monitor debug output on your local Windows system, or any computer on the network that you can reach via TCP/IP.
Visual Leak Detector
Edit
- https://vld.codeplex.com/
- Desc. : a free, robust, open-source memory leak detection system for Visual C++.
- Readings
- Visual Leak Detector: Investigate Memory Leaks in Visual C++(SEPTEMBER 11, 2010)
- Visual Leak Detector - Enhanced Memory Leak Detection for Visual C++(14 Nov 2006)
WinDbg
Edit
- https://en.wikipedia.org/wiki/WinDbg
- Desc. : a multipurpose debugger for the Microsoft Windows computer operating system, distributed on the Worldwide Web by Microsoft.
- License : commercial
- Readings
- Downloads
- Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1
- Microsoft Windows SDK for Windows 7 and .NET Framework 4
- Windows SDK for Windows 8
- Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
- Windows SDK for Windows 8.1
- Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Documentation
Edit
DocFX
Edit
- http://dotnet.github.io/docfx/
- Desc. : tools for building and publishing API documentation for .NET projects
- License : The MIT License
- Sources : https://github.com/dotnet/docfx
Sandcastle
Edit
- https://sandcastle.codeplex.com/
- Desc. : a documentation compiler for Managed class library that generates Microsoft-style Help topics, both conceptual and API reference.
- License :
- Sources : https://github.com/NLog/NLog/tree/master/tools/Sandcastle
- Readings
Build Tool
Edit
MSBuild
Edit
- https://github.com/microsoft/msbuild
- Desc. : the build platform for .NET and Visual Studio
- License : MIT license
- Source : https://github.com/microsoft/msbuild
- Readings
- Official documentation
- MSBuild Reference
- MSBuild Reserved and Well-Known Properties
- How to: Use Environment Variables in a Build
- All environment variables are available to the Microsoft Build Engine (MSBuild) project file as properties.
Installer
Edit
WiX Toolset
Edit
- http://wixtoolset.org/
- Desc. : a set of tools that allows you to create Windows Installer-based deployment packages for your application.
- License : Common Public License
- Sources
- WiX Toolset v3.x : https://github.com/wixtoolset/wix3
- WiX Toolset v4.x : https://github.com/wixtoolset/wix4
- References
- WiX Official Manual
- WiX Tutorial
- Formatted Strings
- Referencing properties, preprocessor variables and binder(linker) variables
- Compile-time variable substitution :
$(var.Foo)
- Link-time(bind-time) variable substitution :
!(bind.Bar)
- Events and Actions
- Formatted Strings
- Tools
- Schemas
- Properties/Variables
- Properties Guide
- Properties are global variables that Windows Installer uses during an installation.
- Property Reference (properties defined by Windows Installer)
-
ProductVersion
propertymajor.minor.build
format - Operating System Property Values
-
- System Folder Properties
- Binder Variables
- Properties Guide
- Actions
- Windows Installer Standard Actions Reference
- Standard Custom Actions
-
WixNetfxExtension
- custom action to generate native code for .NET assemblies; properties to detect .NET Framework install state and service pack levels.
- Readings
- Preprocessor
- variables, conditional statements, iteration statement
- How To: Add a File To Your Installer
- How to create a directory in wix?(Jun 2 '12)
- How To: Specify source files
- How To: Generate a GUID
- Create GUIDs online
- How To: Check for .NET Framework Versions
- How To: Install the Visual C++ Redistributable with your installer
- WiX 3 Tutorial: Solution/Project structure and Dev resources(2010/02/11)
- WiX 3 Tutorial: Understanding main WXS and WXI file(2010/02/17)
- WiX 3 Tutorial: Generating file/directory fragments with Heat.exe(2010/02/23)
- WiX 3 Tutorial: Custom EULA License and MSI localization(2010/04/15)
- How To: Optimize build speed
- Properties/Variables
- What does square brackets syntax mean in WiX(May 29 '14)
- Formatted data type of Windows Installer
- a text string that is processed to resolve embedded property names, table keys, environment variable references, and other special substrings.
- The WiX toolset's "Remember Property" pattern.(May 2, 2010)
- UI
- Actions
- Localization
- Preprocessor
Windows Installer
Edit
Inno Setup
Edit
- http://www.jrsoftware.org/isinfo.php
- Desc. : A free installer for Windows programs.
- Readings
Nullsoft Scriptable Install System
Edit
- http://nsis.sourceforge.net/
- Desc. : A professional open source system to create Windows installers.
IExpress
Edit
- https://technet.microsoft.com/en-us/library/dd346760.aspx
- Desc. :
- License :
- Readings
Package Management
Edit
NuGet
Edit
- https://www.nuget.org/
- Desc. : the package manager for the Microsoft development platform including .NET.
- License :
- Packages : https://www.nuget.org/packages
- Readings
Chocolatey
Edit
- https://chocolatey.org/
- Desc. : a package manager for Windows (like apt-get or yum but for Windows)
- License : AGPL
- Sources : https://github.com/chocolatey/chocolatey.org
- Packages : https://chocolatey.org/packages
- Commands
Scoop
Edit
- http://scoop.sh/
- Desc. : A command-line installer for Windows
- License
- Sources : https://github.com/lukesampson/scoop