代码之家  ›  专栏  ›  技术社区  ›  Andrew Simpson

在Windows IoT上与asp.net核心应用程序一起使用Sqlite

  •  0
  • Andrew Simpson  · 技术社区  · 7 年前

    我有一个Asp.netCore应用程序。

    然后我把它编译成这样:

    dotnet发布-r win arm

    然后我打开运行Windows10IoT的Raspberry Pi上的网络共享。

    我将桌面上已发布文件夹中的所有内容复制到raspberry pi上的一个文件夹中。

    然后从我的桌面浏览到Raspberry Pis的Ip地址。

    我的页面加载良好。

    如果我现在导航到一个我知道将从sqlite db获取记录的页面,我会得到以下错误:

    enter image description here

    读取错误告诉我(我认为)我使用了错误的dll。

    我在google上搜索过,它告诉我使用uwp dll。我所能想到的是,因为我使用arm开关编译它,我需要在Pi框上使用sqlite dll。

    如果我错了,我该怎么办?

    以下是我正在使用的库:

    enter image description here

    谢谢

    更新。

    根据丽塔的回答,我得到了一个不同的错误,那就是:

    enter image description here

    1 回复  |  直到 7 年前
        1
  •  1
  •   Rita Han    7 年前

    此问题是由于asp.net核心应用程序发布文件夹中缺少e\u sqlite3.dll造成的。您可以在Github上找到类似的问题,比如 this

    有一个解决办法,我测试的树莓Pi与Windows物联网核心,它为我工作。

    找到 在Raspberry Pi上的\Windows\system32中,将此文件复制到应用程序发布文件夹并将此文件重命名为 e\u sqlite3.dll . 那就行了。

    仅限 Microsoft.Data.Sqlite文件

    .csproj文件内容:

    <Project Sdk="Microsoft.NET.Sdk.Web">
    
      <PropertyGroup>
        <TargetFramework>netcoreapp2.1</TargetFramework>
      </PropertyGroup>
    
      <ItemGroup>
        <PackageReference Include="Microsoft.AspNetCore.App" />
        <PackageReference Include="Microsoft.Data.Sqlite" Version="2.1.0" />
      </ItemGroup>
    
    </Project>
    
    推荐文章