Home c# What is the difference between NetFramework and Netcore

What is the difference between NetFramework and Netcore




When trying to connect the library to the UWP application received this warning:
“The project is designed for” .netcore “, while the link file is designed for” .NetFramework “”

It seems that the platform, and the platform, so what is the difference, why are there two of them and is it possible to connect between them (connect one to another and vice versa)?

Answer 1, Authority 100%

.NET Framework is an old platform operating only under Windows.

.NET Core is a new platform that can work both under Windows and under Linux. But she is still quite “raw” – a lot of tools have not yet been transferred to it.

Connect one to another will not work, because they have different system libraries (as well as different assembly systems if you are using Visual Studio version 2015 or lower).

besides them, there are still platforms:

Mono – can work both under Windows and under Linux. Attempts to be compatible with .NET Framework.

UWP is a platform for writing Windows applications using WinRT. I do not know about compatibility with .NET Framework.

Silverlight is an old platform (stuck at about .NET 4.5), designed to work in the browser (like Java applets). Not so long ago was seriously injured Google, who stopped supporting NPAPI in his chrome. Not compatible with .NET Framework.

.NET Compart Framework is an incompatible .NET Framework for Windows CE. Now is on the same landfill where Windows CE was thrown.

Unity – Form Mono, a platform for writing graphic (including 3D) applications. There is an embedding option to the browser (does not work in chrome due to the failure of NPAPI in the chrome works with the Web Assembly technology).

PCL (Portable Class Library) is a general subset of different versions of .NET Framework, UWP and Silverlight. Compatible with them in one direction (PCL library can be used on the listed platforms).

.NET Standard is a new PCL reincarnation. From PCL is characterized by a versioning approach: if a library developer selects a list of supported platforms, then for .NET Standard is selected version of the standard (and for platforms you know which versions are supported).

Answer 2, Authority 8%

If you see which versions of Netstandard supports UWP https://habrahabr.ru/post/312026/

I will see that this is 1.4. Current maximum version 1.6

https://msdn.microsoft.com/ru-ru/magazine /MT590967.aspx

Finally, the .NET Core is the underlying infrastructure from which
Depends .NET Native. When the .NET Native was designed, it became clear
What .NET Framework does not suit the foundation for libraries
classes of this infrastructure. The fact is that .NET Native statically
connects the infrastructure with the application, and then removes everything too much
What does not need an application. (Here I greatly simplify the overall picture, but
The idea you caught. Read more on this topic, see “Inside .NET Native” by
link bit.ly/1ur7chw .)

Traditional .NET Framework implementation
provides for breaking modules, so the linker is not
may include in the application only that part of the infrastructure that
Need an application. But .NET Core, in fact, is a branch .NET
Framework, the implementation of which is optimized with the modularity.
Another advantage of this implementation is the ability to deliver .NET Core
Framework as a set of nuget packets, which allows you to update
Individual classes outside the .NET Framework. However, before
move on, let’s discuss changes to Nuget.

UWP is focused on .NET CORE, so it is not compatible with the .NET Framework


Programmers, Start Your Engines!

Why spend time searching for the correct question and then entering your answer when you can find it in a second? That's what CompuTicket is all about! Here you'll find thousands of questions and answers from hundreds of computer languages.

Recent questions