Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

ASP.NET Web Framework is the Windows only 18 yo Web Framework based on .NET Framework https://en.wikipedia.org/wiki/ASP.NET It could run on Mono/Linux, but did so very slowly & buggy and possibly what the slowest benchmark was run on.

ASP.NET Core is the newer (complete rewrite, inc runtime), leaner cross-platform (Win,Linux,macOS) Web Framework that's built on top of the performance focused .NET Core runtime released in 2016 https://dotnet.microsoft.com/learn/aspnet/what-is-aspnet-cor... They're only the same by name which is unfortunate, because it's completely new. It's the future runtime/platform for .NET and will be renamed to .NET 5 whilst the older .NET Framework will stay at v4.x (currently at v4.8).



> They're only the same by name which is unfortunate, because it's completely new.

I certainly wouldn't say that. Full Framework .Net and .Net Core are _far_ more similar than they are different - they share a very large common base class library API surface in Net Standard.

A huge percentage of .Net MVC 3-5 (full framework) applications could be migrated to .Net Core MVC in a matter of hours to days.

You don't even have to specifically target .Net Core in a lot of cases - v2 included a compatibility shim so that libraries targeting full framework just work as long as they don't call any of the API's that were in full framework but are not in the Core runtime.

The main differences are in startup configuration of your web app and how you go about implementing cross-cutting concerns that might inspect or intercept every request - but even for a lot of common things like authentication there are similar extension points to what existed previously.

There are some particular technologies - like WCF Server or Linq2Sql - that are hard blockers if you were relying on them - but by and large moving from older full framework .Net to .Net Core is not that difficult and certainly doesn't require learning much new, especially fundamentals - it's mostly just some details of the web app framework.


ASP.NET Core was a rewrite. None of the previous .NET Framework or HttpListener HTTP classes or Abstractions are available in .NET Core which were rewritten to use newer HTTP Abstractions from scratch.

> The main differences are in startup configuration

It's definitely not the main difference, it may be what's immediately visible as a dev using it, but the entire Web Framework your App depends on is new. It's not a fork of an existing code base, it's a completely different one with the goal to retain the same development MVC & Web API model to preserve knowledge reuse & ease porting efforts.

The compatibility layers are just that, retrofitted to preserve compatibility & ease porting which is able to work through impl-free Reference assemblies with APIs they both share. Of course none of ASP.NET Framework System.Web is in .NET Standard, because it was rewritten.

The OSS code base for ASP.NET Core is at https://github.com/aspnet whilst you can view source code of .NET Framework (which isn't OSS) is at: http://sourceof.net


Aaah, thanks!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: