[原始] .NET Core应用程序类型(应用程序和自我

电脑杂谈  发布时间:2020-03-22 19:12:25  来源:网络整理

portableapps使用_斗战神 使用使用多开外挂_充气娃娃使用使用视频

有许多方法可以考虑要构建的应用程序的类型. 通常,类型用于描述特定的执行模型或基于该模型的应用程序. 例如: 控制台应用程序portableapps使用,Web应用程序等. 所有这些类型的应用程序都可以使用.NET Core创建. .NET Core本身是一个通用开发平台. 但是,要为.NET Core提供跨平台功能,.NET Core仍然需要一个角落来发现应用程序的类型,这称为: 应用程序的可移植性. 可移植性实质上意味着您的应用程序可以在哪里运行,以及在特定计算机上运行需要满足哪些先决条件. 下面我们描述.NET Core具有的两种主要的可移植性.

应用程序是.NET Core的默认应用程序类型. 这要求.NET Core必须事先安装在运行该程序的目标计算机上. 这意味着作为开发人员,您的程序可以在不同的.NET Core设备之间移植. 这种类型的应用程序仅需要携带和部署自己的代码和依赖项(.NET Core库之外). 为了创建一个可移植的应用程序,您需要做的就是在project.json中设置当前的.NET Core类库,然后将框架更改为以下内容:

"dependencies": {
    "Microsoft.NETCore.App": {  
        "version": "1.0.0",
        "type": "platform"
    }
},
"frameworks": {
    "netcoreapp1.0": {}
}

斗战神 使用使用多开外挂_portableapps使用_充气娃娃使用使用视频

[Microsoft.NETCore.App]是一个“元数据包”,向您显示目标.NET Core库. 依赖项中的[type: platform]属性意味着发布时,发布工具将忽略发布这些依赖的.NET Core类库文件,因为这些依赖类库文件已经安装在具有.NET Core的目标服务器上.

使用本机依赖项的应用程序

使用本机依赖性的应用程序是上面的应用程序的子集. 这些可移植应用程序在依赖关系链的特定位置指定了一些本机依赖portableapps使用,因此这些本机依赖可以直接在目标平台上运行,我们的可移植程序也可以直接在这些平台上运行. 最典型的例子是我们的Kestrel服务器(ASP.NET跨平台Web服务器),它建立在libuv(本地依赖)上. 当发布具有本机依赖关系的可移植应用程序时,所有发布输出均与上述一致. 至于本机依赖性,发行版输出将为每个RID(运行时标识符)生成一个文件夹. 以下project.json文件显示了使用本机依赖关系的可移植应用程序:

斗战神 使用使用多开外挂_充气娃娃使用使用视频_portableapps使用

"dependencies": {
    "Microsoft.NETCore.App": {  
        "version": "1.0.0",
        "type": "platform"
    },
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0-*"
},
"frameworks": {
    "netcoreapp1.0": {}
}

与可移植应用程序不同,独立应用程序不依赖您计划在其中部署程序的目标计算机上的任何共享组件. 顾名思义,这意味着整个依赖项都是闭环的,运行时将与整个程序一起释放. 这将使整个发行版的更改变大,但也允许程序以正确的本机依赖性(无论是否已在目标服务器上预先安装了.NET Core)在.NET Core支持的任何平台上运行. 这样可以更轻松地将应用程序部署到目标服务器. 由于应用程序的启动现在带有其自己的运行时,因此您必须预先指定程序将在哪些平台上运行. 例如,如果您要将独立程序发布到Windows 10,但尚未准备好在macOS和Linux上运行,则必须在开发过程中添加或删除某些平台. 完成一个独立程序的步骤很多,但是第一步是删除任何“类型”: “平台”

属性. 第二步是保持对Microsoft.NETCore.App的依赖,这将带来我们需要的其他一些东西. 最后,我们需要在project.json中添加一个运行时节点,以指示程序将在哪些平台上运行.

充气娃娃使用使用视频_斗战神 使用使用多开外挂_portableapps使用

"dependencies": {
    "Microsoft.NETCore.App": "1.0.0"
},
"frameworks": {
    "netcoreapp1.0": {}
},
"runtimes": {
    "win10-x64": {},
    "osx.10.11-x64": {}
}

还原项目时,如果project.json包含运行时节点,则NuGet将还原所有指定的运行时. 接下来,当我们需要为给定平台发布应用程序时,我们使用以下命令行:

dotnet publish --runtime <RID>

充气娃娃使用使用视频_portableapps使用_斗战神 使用使用多开外挂

RID必须是project.json中指定的RID,例如: win10-x64或osx.10.11-x64,否则将报告错误. 如果要发布的操作系统是当前的.NET Core操作系统,则可以直接使用以下命令:

dotnet publish

但是您仍然需要在project.json中指定相应的RID.

但是请注意,在.NET Core Tools Preview 2的期限内,从本机NuGet缓存中释放了独立的应用程序,这意味着该应用程序的所有依赖项都包括.NET Core运行时和类,该库未运行优化. 因此,独立应用程序的整体性能要比应用程序低,因为应用程序所依赖的.NET Core运行时和类库都可以立即运行.


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-148643-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 郭丽平
        郭丽平

        直接成为一艘在南海核心地区用不沉没的航母

      • 冯亚蕾
        冯亚蕾

        那索罗斯

      • 栗晨辉
        栗晨辉

        吸取教训

      热点图片
      拼命载入中...