3 ms·
I'm more interested in the fact that something called asp.net core is one of the five fastest, while asp.net not 'core' is the single slowest. What's the deal
by paultopia 6y ago
I'm more interested in the fact that something called asp.net core is one of the five fastest, while asp.net not 'core' is the single slowest. What's the deal there? I dimly know that asp.net is a Microsoft thing, and remember it being used by a bunch of enterprise sites a decade or so ago...
- deleted 6y ago[deleted]
- mythz 6y agoASP.NET Web Framework is the Windows only 18 yo Web Framework based on .NET Framework https://en.wikipedia.org/wiki/ASP.NET 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-core 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).
- qes 6y ago> 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.
- mythz 6y agoASP.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 https://github.com/aspnet whilst you can view source code of .NET Framework (which isn't OSS) is at: http://sourceof.net http://sourceof.net
- paultopia 6y agoAaah, thanks!
- sdevio 6y agoThe naming is just confusing. dotnet core is a cross-platform open source rewrite of the .net run time and is very performant, the old asp.net framework runs on the windows old .net runtime that you are aware of.
- orthoxerox 6y agoThey rewrote most of their stack when they switched from .Net Framework to cross-platform .Net Core. There's a lot of wailing and gnashing of teeth in enterprises that invested heavily into deprecated technologies, but the new Core platform is very good for modern webdev.
- legulere 6y agoASP.net runs on IIS or HTTP.SYS and is hardly optimized. ASP.Net core has an own HTTP server (kestrel) and has had numerous optimizations , including to the .NET Core framework and C# (for instance Span<T>)