【问题标题】:Build error with assembly missing缺少程序集的构建错误
【发布时间】:2020-12-20 13:43:12
【问题描述】:

当我构建我的 xamarin 表单应用程序时,出现以下异常,请告诉我如何修复它

加载程序集时出现错误异常: System.IO.FileNotFoundException:无法加载程序集 'SQLitePCL.raw,版本 = 0.7.1.0,文化 = 中性,PublicKeyToken ='。 也许它在 Mono for Android 配置文件中不存在?文件名: 'SQLitePCL.raw.dll'

在 Xamarin.Android.Tuner.DirectoryAssemblyResolver.Resolve(AssemblyNameReference 参考,ReaderParameters 参数)

在 Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(ICollection`1 程序集,AssemblyDefinition 程序集,布尔顶级)

在 Xamarin.Android.Tasks.ResolveAssemblies.Execute() C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets

谢谢

【问题讨论】:

  • 是的,我已添加到 xamarin 表单和 xamarin android 项目中

标签: c# visual-studio xamarin


【解决方案1】:

我已经看到 System.IO.FileNotFoundException 没有加载引用的这种行为。就我而言,它是参考本身。 在您的情况下,“SQLitePCL.raw.dll”似乎与 Xamarin PCL 不兼容。

我设法解决了这个问题

  1. 从我的项目中删除引用
  2. 通过 nuget 包管理器添加引用
  3. 如果您在 nuget 中找不到参考,我建议您从 SQL Lite 站点检查您拥有的此 dll 是否与 Xamarin 兼容。

您还可以从包含 SQLLite 的 Xamarin 网站查看以下演练 https://developer.xamarin.com/guides/cross-platform/application_fundamentals/data/

在本演练中,您可以看到 Xamarin 正在使用一个名为“SQL Lite.net PCL”的 nuget 包。

希望有帮助

【讨论】:

    【解决方案2】:

    我遇到了类似的问题,我可以通过单击添加 SQLitePCL.raw.dll 程序集参考文件来解决

    Add Reference>Browse>Packages>SQLitePCL.raw_basic.0.7.1>lib>MonoAndroid>SQLitePCL.raw.dll
    

    确保您已从 nuget 安装软件包

    Install-Package sqlite-net-pcl
    

    如需更多参考,请访问 https://developer.xamarin.com/guides/android/application_fundamentals/data/part_3_using_sqlite_orm/

    【讨论】:

      【解决方案3】:

      我解决了这个问题:只需在 NuGet 包管理器中更新已安装的包。

      【讨论】:

        【解决方案4】:

        从项目中删除所有与 sqlite 相关的引用,然后通过 Nuget 安装 sqlite-net-pcl 并在启动时调用 SQLitePCL.Batteries.Init()。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-12-07
          • 2017-08-19
          相关资源
          最近更新 更多