【问题标题】:Namespace not found after successful installation of Nuget package?成功安装 Nuget 包后找不到命名空间?
【发布时间】:2023-02-26 00:52:49
【问题描述】:

我有一个名为 Visual Studio 22 .Net 7 Maui 类库的项目混合扫描仪.

我正在导入 following Nuget 包。

nuget 包安装成功。

但是我无法在我的图书馆中使用它。我收到错误:

找不到类型或命名空间名称“PackageName”(是否缺少 using 指令或程序集引用?)

nuget 包在 .net Maui 应用程序项目中运行良好。

经过一些调查,我注意到以下几点:

谁能告诉我这是什么意思?这是否意味着 NugetPackage 不适用于 Net7.0 而我的项目试图针对它进行构建?

请问有人知道我做错了什么吗?

谢谢。

【问题讨论】:

    标签: visual-studio


    【解决方案1】:

    NuGet 包ZXing.Net.Maui(当前版本为0.3.0-preview.1)针对这些框架:

    • net7.0-安卓33.0
    • net7.0-ios16.0
    • net7.0-maccatalyst 15.4
    • net7.0-windows10.0.19041

    所有这些都是特定于操作系统的 TFMtarget framework moniker)。 但是,不支持 .NET 7.0 的平台不可知 TFM net7.0

    要解决消费项目中的问题,您要么必须删除 net7.0 目标,要么有条件地保护 preprocessor directives 的用法。

    在您的情况下,要么将 .csproj 更改为

    <TargetFrameworks>net7.0;net7.0-android;net7.0-ios;net7.0-maccatalyst</TargetFrameworks>
    

    <TargetFrameworks>net7.0-android;net7.0-ios;net7.0-maccatalyst</TargetFrameworks>
    

    或者您有条件地编译库的用法

    #if (ANDROID || IOS || MACCATALYST)
    using ZXing;
    #endif
    

    【讨论】:

      猜你喜欢
      • 2017-05-08
      • 1970-01-01
      • 2019-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-13
      相关资源
      最近更新 更多