The .NET Framework Limitation
Historically, running a .NET application required installing the massive .NET Framework on Windows servers. The framework was tightly coupled to the Windows registry and IIS, preventing organizations from hosting .NET systems on Linux or inside cloud containers.
Microsoft's announcement of ASP.NET vNext (the early prototype of .NET Core) in May 2014 represents a major rewrite of the framework.
Cloud Standard: Decouple runtimes from operating systems. Build modular, container-friendly dependencies that execute cross-platform.
Key Innovations in ASP.NET vNext
ASP.NET vNext decouples application dependencies:
- ◆Cross-Platform Compilation: Running .NET applications natively on Windows, macOS, and Linux using early Mono/K runtime environments.
- ◆Zero Registry Dependencies: System configurations are written in simple JSON files (
config.json) instead of the Windows registry. - ◆Modular NuGet Packages: Instead of loading the entire System.Web DLL, applications load only the specific NuGet modules required (e.g.
Microsoft.AspNet.Routing).
| Architecture Layer | Traditional .NET Framework | ASP.NET vNext (.NET Core) |
|---|---|---|
| OS Hosting | Windows Server only. | Windows, Linux, and macOS. |
| Runtime Footprint | System-wide GAC (Gigabytes). | Application-local NuGet packages (Megabytes). |
| Web Server | IIS only. | Self-hosted Kestrel engine. |
Project Dependency Configuration
// project.json configuration file in early ASP.NET vNext
{
"dependencies": {
"Microsoft.AspNet.Mvc": "6.0.0-alpha1",
"Microsoft.AspNet.Server.WebListener": "1.0.0-alpha1"
},
"frameworks": {
"net451": {},
"k10": {}
}
}By open-sourcing the .NET compiler (Roslyn) and runtime, Microsoft aligns .NET with modern cloud architectures.