question

WonderfulWorld-6345 avatar image
0 Votes"
WonderfulWorld-6345 asked JayRathod-3505 answered

Upgrade WCF application to .NET 6.0

We have a WCF application developed with .NET Framework 4.6.1. We have already a modernization project going on to migrate to .NET 6. This modernization project will take a year or more to complete.

Because the supporting for .NET Framework 4.6.1 is ending soon, we need to urgently migrate this WCF application to .NET Framework 4.8 or .NET 6. Half of our apps and services are in both .NET Framework and .NET Core 3.1. We are thinking about migrating all apps and service to .NET, but I read that WCF service is not supported in .NET 6.

  1. Can .NET Upgrade Assistant migrate WCF app to .NET 6?

  2. Is there a migration utility available to migrate WCF to .NET 6?

  3. Is it safe to migrate the WCF app to .NET Framework 4.8 and get support from Microsoft for the next 1-2 years at least?

dotnet-csharpwindows-wcf
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

LanHuang-MSFT avatar image
0 Votes"
LanHuang-MSFT answered LanHuang-MSFT edited

Hi @WonderfulWorld-6345,
If you want to use .NET 6, I recommend you to use an alternative to WCF: gRPC,CoreWCF,ASP.NET Core MVC.
Or use the WCF Web Services Reference Provider Tool, a Visual Studio Connected Services extension that lets you connect .NET 5+, .NET Core, or ASP.NET Core projects to web services.
https://docs.microsoft.com/en-us/dotnet/core/additional-tools/wcf-web-service-reference-guide

The original implementation of Windows Communication Foundation (WCF) was only supported on Windows. However, there is a client port available from the .NET Foundation. It is entirely open source, cross platform, and supported by Microsoft. The core NuGet packages are listed below:

 System.ServiceModel.Duplex
 System.ServiceModel.Federation
 System.ServiceModel.Http
 System.ServiceModel.NetTcp
 System.ServiceModel.Primitives
 System.ServiceModel.Security

The community maintains the server components that complement the aforementioned client libraries. The GitHub repository can be found at CoreWCF. The server components are not officially supported by Microsoft. For an alternative to WCF, consider gRPC.
https://docs.microsoft.com/en-us/dotnet/core/whats-new/dotnet-5#windows-communication-foundation

Best regards,
Lan Huang


If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

JayRathod-3505 avatar image
0 Votes"
JayRathod-3505 answered

You can consider gRPC + Web API combination by following microservice architecture in .net 6 with visual studio 2022.

5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.