Can we upgrade targetframework versions as netstandard and netcoreapp to a .net framework version?

108 Views Asked by At

I have projects in a repository with trarget framewrk version as lower .net framework versions(2.0,3.0,3.5..etc). I need to upgrade them to higher framework version(v4.8) due to some security vulnerabilities.

enter image description here

But I found that few project's .csproj file has targetframework as netstandard2.0 and netcoreapp2.0. E.g., enter image description here

enter image description here

Below are my questions,

  1. What is the the difference between .net framework, netstandard and netcoreapp?
  2. Do I need to upgrade projects with targetframework as netstandard and netcoreapp to .net framework version v4.8 in my case? Will there be any security vulnerabilities if I don't upgrade them?

Any help or direction on this is appreciated. Thanks in advance.

1

There are 1 best solutions below

3
Manuel Fabbri On

I think the official documentation about NET Standard would be the best thing to read in this case.

Every NET standard version defines a subset of API that are included on a specific implementation of the runtime framework (e.g. .NET 4.8, netcoreapp3.1 or NET 7).

Also this image could be helpful.

About your first question: netstandard2.0 is implemented both by NET4.8 and netcoreapp3.1, but not by the older versions of .NET framework (2.0, 3.0, 3.5...). For example, on a project that targets NET4.8 framework you can reference a netstandard2.0 library, whereas this is not possible from a NET3.5 project.