网站界面设计有哪些,制作app怎么做,做网站制作怎么样,网站建设的要求.NET程序是基于.NET framework、.NET Core、Mono、UWP【.NET实现】开发和运行的 #xff0c;定义以上【.NET实现】的标准规范称为.NET StandardL1#xff1a;.NET Standard.NET标准是一组API集合#xff0c;由上层三种【.NET实现】的Basic Class Library实现#xff0c;更正… .NET程序是基于.NET framework、.NET Core、Mono、UWP【.NET实现】开发和运行的 定义以上【.NET实现】的标准规范称为.NET Standard L1.NET Standard .NET标准是一组API集合由上层三种【.NET实现】的Basic Class Library实现更正式的说法由统一契约集合构成的规范这个集合确保了在不同【.NET实现】之间的可移植性能让你的代码 run everywhere。 .NET Standard 也是一个 target framework。如果您的代码针对的是.NET Standard的一个版本那它可以在任意一个 支持该.NET Standard版本的.NET实现上运行。L2[.NET实现] 上图给出的是微软积极支持和维护的有三个主要的【.NET实现】.NET Framework,.NET CoreMono ①.NET Framework 最早期的.NET 实现 4.5版本开始实现.NET Standard https://docs.microsoft.com/en-us/dotnet/standard/net-standard https://docs.microsoft.com/en-us/dotnet/standard/frameworks 早期的微软比较闭源.NET Framework 是为构建面向windows桌面环境而设计的针对不同的应用程序形态设计了 WINFORM、 ASP.NET、WPF ②.NET Core 是近几年微软拥抱开源的结晶.NetCore是一个跨平台的【.NET实现】因为原生实现了.NET Standard完全没有版本包袱 面向.NETStandard的代码可以在.NET Core平台上编译和运行。 针对Web程序.NetCore准备了ASP.NECore框架 定位是微软新一代高性能、开源、跨平台Web开发框架, 目前最新稳定版本为2.2 另外.NetCore 3.0即将支持WINFORM、WPF 这样将全面覆盖.Net Framework 支持的应用程序形态。 ③ Mono 是一个微小运行时的 【.NET实现】驱动 Xamarin用于androidios 等开发支持目前所有公开的.NET standard 版本。 本人近些年工作在.NetCore平台 有一些宏观上的经验之谈 可供参考。 一.NetCore部署目标的选择 部署目标是在Target Framework Moniker中定义 决定了程序的部署定位 常见有如下2种netstandardnetcoreapp 在实践中项目早期可能是定位是 netstandard后面随着项目演进依赖的库越来越多大部分都会变成netcoreapp. 如L1所述 .NetStandard也是一个 target framework, 旨在在多个运行时跨越.Net Framework.NET Core XAMARIN上运行的程序应该以此框架为目标。 伴随项目演进 程序依赖的某些库可能只有针对 .NetCore的版本从生产实际看 部署环境只会部署一套.Net Core运行时, 所以后期项目很大可能性会演进成 针对 .Net Core 运行时部署。 二开发环境存在多SDK、多Runtime版本时应当知晓 .NET Core工具、SDK和运行时版本选择的策略。 ① 当运行SDK命令会使用安装的最新版本命令 ② 目标框架标记target framework monikers定义编译时刻的API编译.NetCore程序的API是在项目文件的 Target framework Moniker中定义的TargetFrameworknetcoreapp2.0/TargetFrameworkTargetFrameworksnetcoreapp2.0;net47/TargetFrameworks ③ 运行.NetCore程序( 框架独立的.NetCore 程序 ), 在部署服务器上会适用版本前滚的策略在项目文件中指定了netcoreapp2.0, 在部署环境中2.0.4 是安装的最新运行时版本 那么就会使用2.0.4运行时版本 ④ 发布自包含的程序自包含的部署程序会包含指定的运行时部署自包含.NetCore 程序时 部署文件包含了.NetCore 运行时和程序依赖的库文件自包含项目并不依赖 部署服务器上运行时环境运行时版本选择发生在发布阶段而不是在运行阶段。目前 自包含.NetCore程序使用场景不多一般用于需要将程序应用到复杂的多种客户环境中这种部署方式可将运行时和依赖环境打包不用去提前知晓客户服务器运行时。 Tip针对策略① 有些特殊应用场景如果项目需要使用早期的SDK版本可在global.json文件中指定该早期版本规避最新策略原文地址https://www.cnblogs.com/JulianHuang/p/11126915.html.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com