加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-core – 如何在基于arm的自定义linux上运行ASP.NET Core

发布时间:2020-12-16 06:50:43 所属栏目:asp.Net 来源:网络整理
导读:我想构建一个ASP.NET Core Web API服务,在基于 angstrom的Linux上运行 arm (cortex-A7) device. 问题:最佳路线是什么? 为arm7设备编译CoreClr,CoreFx和什么不是(可能是possible,但我不确定angstrom linux).如果可行,则应在该设备上运行已发布的字节码. 使
我想构建一个ASP.NET Core Web API服务,在基于 angstrom的Linux上运行 arm (cortex-A7) device.

问题:最佳路线是什么?

>为arm7设备编译CoreClr,CoreFx和什么不是(可能是possible,但我不确定angstrom linux).如果可行,则应在该设备上运行已发布的字节码.
>使用dotnet native和target arm交叉编译我的aspnet应用程序.我找不到有用的信息,但它可能是有可能的.
>还有别的吗?就像从我的项目中生成C代码一样?
>为设备编译不同的Linux发行版(可能不行,因为我们需要Linux Cortex-A7 CPU和FreeRTOS Cotex-M4 CPU之间的IPC).

我主要担心的是angstrom发布,现在没有dotnet core支持.欢迎任何建议!

编辑,打开问题:

>我在哪里可以为Cortex-A7下载正确的预制dotnet二进制文件(我无法让https://github.com/dotnet/core-setup工作)?
>我还需要哪些其他先决条件(如果有的话)?

解决方法

您可以使用.NET Core的可移植linux-arm运行时版本.
在您的构建计算机上,确保dotnet –version返回2.0,预览版或更高版本(在撰写本文时:2.0.0-preview1-005977).

> dotnet new mvc
> dotnet restore -r linux-arm
> dotnet publish -r linux-arm / p:MvcRazorCompileOnPublish = false
>将bin / Debug / netcoreapp2.0 / linux-arm / publish的内容复制到目标计算机并使用./nameOfTheProject运行

既然您可能也希望在本地开发,那么您需要编辑这样的项目(.csproj)文件(< PropertyGroup>):

<RuntimeIdentifiers>linux-arm</RuntimeIdentifiers>
<MvcRazorCompileOnPublish Condition=" '$(RuntimeIdentifier)' != 'linux-arm' ">true</MvcRazorCompileOnPublish>

这样,您可以在开发期间使用dotnet还原,dotnet运行和dotnet发布,也可以在没有其他参数的情况下使用其他部署,并且在准备部署到arm时,只能使用:

dotnet publish -c Release -r linux-arm

并使用bin / Release / netcoreapp2.0 / linux-arm / publish中生成的二进制文件(或传递一个额外的-o ../publish-output参数)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读