At the Build conference in May 2019, we mentioned that, after we add WinForms, WPF and Entity Framework 6 to .NET Core 3.0, we do not plan to add any more of the technologies from .NET Framework to .NET Core.
This means we will not be adding ASP.NET Web Forms, WCF, Windows Workflow, .NET Remoting and/or the various other smaller APIs to .NET Core. For new applications, there are better technologies that serve a similar purpose and provide more capabilities or better experiences. We think of .NET Core as the framework our customers will build brand new applications or port applications that they are still spending lots of engineering work on.
ASP.NET Blazor – provides a similar component and event-based programming model as ASP.NET Web Forms but generating a SPA (Single Page Application) instead of a traditional web site.
ASP.NET Web API or gRPC – provide APIs and contract-based RPCs that can be used across all devices and platforms.
.NET Core WCF Client – provides the ability for .NET Core projects to call into the existing WCF Servers that run on .NET Framework.
What do you do with your older applications that you are not spending much engineering time on? We recommend leaving these on .NET Framework. If you’re not spending much time on those projects and they meet your business needs, then you should just leave them where they are. You can even modernize those existing applications to Windows containers if you want to run them in containers.
.NET Framework will continue to be supported and will receive minor updates. Even here at Microsoft, many large products will remain on .NET Framework. There are absolutely no changes to support and that will not change in the future. .NET Framework 4.8 is the latest version of .NET Framework and will continue to be distributed with future releases of Windows. If it is installed on a supported version of Windows, .NET Framework 4.8 will continue to be supported too.
If you really want to move one of your older applications to .NET Core and don’t want to migrate it to newer technologies like Web API / gPRC / Cloud based workflow, we are supporting two community efforts that provide ports of Windows Workflow and WCF to .NET Core.
Core WCF
Core WCF is a new community owned project under the .NET Foundation. Microsoft has made an initial contribution of code from a WCF team member to help get the project started. Core WCF is not intending to be a 100% compatible port of WCF to .NET Core, but aims to allow porting of many WCF contract and service implementations with only a change of namespace.
Initially, it will be for HTTP and TCP SOAP services on-top of Kestrel, which are the most commonly used transports on .NET Framework.
This project is not yet ready for production but needs people to get involved and help get it there faster. If you are interested in this, or want more details about the project, then we encourage you to go and explore the Core WCF project on GitHub.
This project has joined the .NET Foundation and you can read about it on the .NET Foundation blog.
Core Workflow
Core WF is a port of Workflow for .NET Core sponsored by UIPath. The project was started by a former Workflow team member and the .NET team has been working to make sure that all the source code they need to do the work of porting Workflow is available to them. This project will need more community help to become a replacement for Workflow on .NET Framework and we encourage anyone who wishes to see Workflow on Core to get involved and see if you can help out.
Conclusion
We’re happy to see these projects be part of the .NET OSS community and hope that you’ll join us in supporting them and other .NET OSS. If you want more information about the .NET Foundation or what you can do to get involved then be sure to checkout the .NET Foundation website.
Quoted question : "What do you do with your older applications that you are not spending much engineering time on?"
Answer: we have an older application we are spending a LOT of engineering on. We only recently ported it from .net remoting to WCF. And now there is C# 8.0 with some very welcome enhancements such as default interface implementations. But it is only supported in .NET core! So we started porting our application to...
Excluding Asp.net Web Forms from .Net Core would be a serious error.
.Net Core or .Net 5 needs ASP.Net Web Forms!
Scott:
ASP.Net Web Forms are a must in .Net Core or .Net 5. Blazor an unreleased experimental framework sounds like a risky choice and a possible waste of time, money and could be self damaging to ones reputation if it doesn't stick around. Web Forms are mature, solve problems and work great for intranet apps. University's might be behind on recent trends, but they still teach ASP.Net Web Forms in their curriculum. For Microsoft to...
Microsoft announced 5 years ago that WebForms will be decomissioned. So, your university teaches outdated technologies.
I also have WebForms apps, and I have to manage further, rewriting is not an option. But we have to accept the things are moving on, and we should do the same.
If you go to a university that still teaches Web Forms as part of a web development curriculum then you kinda deserve to not find a job and have all your children go hungry. ASP.NET MVC was released in 2009; that’s not a recent trend.
So Web Forms is the one framework left high and dry. Way to go Microsoft.
What can be done about getting Web Forms in .Net Core?
I thought UWP was also going core?
WCF Server part is essential for migration scenarios where you replace a .NET WCF service with a .NET Core service. I did never understand why that was completely lacking for .NET Core. HTTP/TCP binding should be sufficient to enable at least that scenario. If you want go forward with gRPC then the .NET Framework should also be able to support that natively. Or should we stick to https://github.com/grpc/grpc/tree/master/src/csharp in that case? Will the upcoming .NET...
That is just A.W.E.S.O.M.E!
To be fair, while not a complete implementation, the idea and a very raw implementation of a basic SOAP middleware using Kestrel was shown in a Microsoft blog post 2 years ago: https://blogs.msdn.microsoft.com/dotnet/2016/09/19/custom-asp-net-core-middleware-example/. SOmeone then turned it into their own expanded open source project at https://github.com/DigDes/SoapCore.
Glad to see you guys came to your senses with WCF after dog piling on it for so long. Sad that it took a mob with pitchforks and torches to make it happen.