Help in planning the .net upgrade

john john 1,026 Reputation points
2023-04-09T23:43:56.8433333+00:00

I want to develop an custom ERP system for our client (i work as a freelancer). And I will use SQL Server 2022 + ASP.NET Core MVC 6.0. now the .net 6.0 will reaches its end of life on Nov 12, 2024. so not sure what the customer needs to do after that, or what i need to mention to them? should they upgrade the .net version 6.0 to 8.0 ? or they can keep using the 6.0 version as long as the application is working well and they do not need any features from version .net 8.0? the application will be a web application and it will be accessible to only users from the client company Active Directory? so generally speaking, i have seen Production web application that uses .net 3.0, other using ASP.NET MVC3 (before the core), etc.. so are all those applications considered obsolete and need to be upgraded to .net 6.0 for example ?

Developer technologies | ASP.NET | ASP.NET Core
Developer technologies | .NET | .NET Runtime
Developer technologies | .NET | Other
0 comments No comments
{count} votes

2 answers

Sort by: Most helpful
  1. Bruce (SqlWork.com) 82,061 Reputation points Volunteer Moderator
    2023-04-10T16:05:54.6966667+00:00

    the older version of .net (3.0 - 4.8) and mvc (3 - 5) was update in place. this meant you installed the runtime update and the code used it. you only needed to update the code if you wanted a new feature. this version of .net is still supported, but receive no new features only bug fixes.

    the requirement for backwards compatibility meant that early design decisions could not be changed. .net core uses a different support model. only security patches are update in place. new versions are installed side by side. for an existing app to run on a version, it must be rebuilt. also its version have a much more limited support timespan. LTS version are supported for a year after the next LTS year, non LTS version 6 months after the next version is released. LTS versions are released every 2 years.

    your best bet is use a LTS version. then every 2 years, you will have a year to upgrade to the new LTS version. Your sticky point is version 8 LTS is due this Nov, and require you do an upgrade next year. depending on you schedule, you might want to upgrade to net 8 before release.

    1 person found this answer helpful.

  2. Anonymous
    2023-04-10T03:02:13.7066667+00:00

    Hi @john john

    As we mentioned, with each new release of .NET Core, there are always new features and enhancements, more security, more performance. And your use of out-of-support .NET versions may put your applications, application data, and computing environment at risk. You are strongly recommended to not use out-of-support software and move to a newer .NET version.

    But when migration to the latest version, there are some problems you should be aware of, the package or method might be obsolete, and there might has some compatibility problem.

    From the .NET release cadence, we can see that the next long term support version (.Net 8) is start from 2023/11. At present, if you no need to use any feature from version 7.0, you can continue to use Asp.net 6, then after .Net 8 release, you can refer the migration document to migration the application from .Net 6 to .Net 8 (If it were me, I would migration it between 2024/5 and 2024/11, because if there has some compatibility problem, it might have been solved). Illustration showing .NET 5 as an STS release that happened in November 2020 and all other releases happening in November, alternating between STS and LTS and .NET 7 as the latest

    Update

    but on reality do you think all users/companies always update to the latest version? especially for large projects as it will be a costly process, am i correct? i know some Production application which is still using asp.net mvc-3 (before the .net core release).. so i am not sure how i need to manage my web application to stay secure + to minimize the cost of upgrade ?

    I understand you, if in current version (.Net 6), the application already implements everything and will not use any of the features in the next .Net version. Then, there is no need to upgrade. When you want to develop the next version of application, you can choose the latest .Net version.


    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.

    Best regards,

    Dillion


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.