在拉斯伯瑞普和视窗10物联网核心上安装ASP.NET核心3.0


ASP.NET核心3.0将在拉斯伯瑞比和其他现成的主板上运行。还有SDK 中提供的二进制文件.NET Core 3.0 download page。拥有一个完整的软件开发工具包意味着我们现在可以在板上构建应用程序了。让我们看看它是如何工作的。

正在安装。基于拉斯伯里皮的网络核心3.0

在本教程中,我将使用带有最新视窗10物联网核心的拉斯伯瑞比2。为了下载。NET Core 3.0,遵循以下步骤:

  1. 从下载ARM SDK二进制文件。网络核心3.0下载网站。
  2. 在窗口资源管理器(\\minwinpc\u$)中打开拉斯伯瑞比磁盘—您可能有一个磁盘(C:)。可以使用。
  3. 创建一个名为“dotnet”的文件夹
  4. 将ARM SDK档案中的文件复制到RaspberryPi上的dotnet文件夹中。

让我们确保一切按预期进行。

  1. 以管理员身份打开Powershell,并连接到RaspberryPi。
    Enter-PSSession -ComputerName minwinpc -Credential minwinpc\Administrator

  2. 将dotnet文件夹添加到路径中。
    $Env:Path += ";C:\dotnet\"

  3. 运行以下dotnet命令,查看是否。网络核心工程。
    dotnet –info
     

如果没有问题或错误,我们可以继续开发。网络核心3.0应用在拉斯伯瑞普和视窗10物联网核心。

发展选择

在构建web应用程序之前,我想就开发选项说几句话。

由于视窗10物联网核心没有命令行文本或代码编辑器,我们不能使用纯命令行ASP.NET核心开发。我们必须在其他机器上用窗口资源管理器打开代码文件夹。从那里,我们可以使用我们喜欢的任何东西来编码,不管是Visual Studio、Visual Studio Code还是其他代码编辑器。

我们可以在开发箱或视窗10物联网核心上构建应用程序。这取决于我们,但我们必须在视窗10物联网核心上运行应用程序。为此,我们必须使用Powershell或SSH。

Visual Studio代码远程

Visual Studio代码有一个叫做Remote。它是一组扩展,允许我们在远程机器上构建和运行代码。目前,不支持视窗10物联网核心。我有一个秘密的希望,那就是有一天视窗10物联网核心也能实现。

Visual Studio Code: Remote architecture

Visual Studio代码:远程架构


如果你运行的是Linux,那就去博客吧Visual Studio Code Remote Development over SSH to a Raspberry Pi is butter作者:斯科特·汉斯曼。

打造ASP.NET核心应用视窗物联网核心

现在让我们创建一个默认的ASP.NET核心应用程序。

  1. 为应用程序创建一个文件夹并移动到该文件夹
    mkdir webappcd webapp
  2. 运行dotnet实用程序创建新的web应用程序
    dotnet new mvc

  3. 确保CreateHostBuilder方法如下所示:
    public static IHostBuilder CreateHostBuilder(string[] args) =>    Host.CreateDefaultBuilder(args)        .ConfigureWebHostDefaults(webBuilder =>        {            webBuilder.UseStartup<Startup>();            webBuilder.UseUrls("http://*:5001/");        });

  4. 通过命令打开视窗物联网核心防火墙设置中的端口5000
    netsh advfirewall firewall add rule name="ASP.NET Core" dir=in action=allow protocol=TCP localport=5001

  5. 构建并运行应用程序
    dotnet build --runtime win10-arm
    dotnet run --runtime win10-arm
  6. 打开浏览器,输入web应用程序的地址(http://minwinpc:5000)。
    拉斯伯里皮上的ASP.NET核心3.0

ASP.NET核心3.0在拉斯伯里比上还有更多——我们也可以编写与硬件通信的应用程序。这是一个单独的主题,将在以后的博客文章中讨论。

包扎

ASP.NET核心3.0使用所有命令行工具在拉斯伯里皮上工作。除了运行应用程序之外,我们还可以在一个RaspberryPi上构建它们。在视窗10物联网核心上,我们无法执行完整的命令行开发;相反,我们需要一些可以运行代码编辑器的外部机器。那些在RaspberryPi上运行Linux的人可以使用Visual Studio代码远程直接在板上构建和运行应用程序。Windows 10物联网核心用户必须使用映射网络驱动和常规工具。