.NET (standard, Core and Framework): cross-platform application development

I searched for SO, but I find many answers, but I do not aim my questions:

AS definitions say:

  • The .NET Framework 4.6 is a complete framework for everything related to .NET, but it lacks libraries and runtimes optimized for multi-platform (Windows, Linux, and Mac) and cloud deployments.
  • .NET Core, on the other hand, is a subset of the .NET Framework 4.6, which is mostly optimized for multi-platform and cloud deployments.
  • NET standard: A standard set of APIs, not a platform. So basically you don’t need platforms, just a standard (version 1.3, 1.6 ...), and your code will work on all platforms supporting it.

To develop cross-platform applications, I intend to create core ASP.NET (.NET) applications that can reference other class libraries that can use:

  • .NET standard
  • .NET Core

I assume that if I use any (standard or basic), my application will still support another OS.

In some cases, I see people using the traditional .NET Framework with the .NET Standard in the class library?

  • In this case, if the application is still running on the platform when using the .NET Framework?
  • When should I mix and use a combination (Standard, Core, NET)?
  • What are the best practices for using and mixing between frameworks?
  • How to avoid conflicts and build failures?

For example, let's say I have a class library that has project.json:

 "dependencies": {
    "Microsoft.Extensions.Caching.Abstractions": "1.0.0",
    "Microsoft.Extensions.Options": "1.0.0",
    "StackExchange.Redis.StrongName": "1.1.608",
    "NETStandard.Library": "1.6.0"
  },
  "frameworks": {
    "netstandard1.5": { }
  }

? , - .

+4
1

, - - .NET Framework?

.NET Framework .Net Core. , Linux Mac OS.

(Standard, Core, NET)?

.Net- , ( , - ).

.Net Framework , , .Net Framework, Windows.

.Net Core , -, API. (.Net Core .Net Framework, .)

?

. .Net Framework .Net Core .

?

, , :

  • .
  • . ( . .Net Core - .)

EDIT:

?

"frameworks": { "netstandard1.5": { } } , .Net Standard 1.5 , .

"dependencies": { "NETStandard.Library": "1.6.0" } , .Net Standard Library. , .Net, .

, , ?

, NETStandard.Library, , . , System.IO.Compression.ZipFile :

  • , (.. )
  • ZipFile .Net Framework 4.6, System.IO.Compression.FileSystem
  • .Net Core, ZipFile

( , NuGetPackageExplorer.)

+3

Source: https://habr.com/ru/post/1659751/


All Articles