【问题标题】:UWP Install MVVM Light and NuGetUWP 安装 MVVM Light 和 NuGet
【发布时间】:2021-04-19 21:18:45
【问题描述】:

我正在 Visual Studio 2019 中处理 UWP 项目,我想安装 MVVM 包。问题是,就我而言,由于 NuGet 3.1 包安装不允许创建新文件和文件夹,因为它们不知道卸载这些包时该怎么做。我想知道如何安装 MVVM Light 以便创建这些文件并成功完成安装。提前感谢您的回答

【问题讨论】:

    标签: uwp nuget visual-studio-2019 mvvm-light


    【解决方案1】:

    问题是您的 uwp 项目使用了PackageReference nuget management format。而MvvmLight nuget package的作者在nupkg下添加了content节点。 它会自动将 nupkg 中的 content 文件夹的文件添加到主项目中。但是,这只适用于packages.config nuget management format

    而且因为您的 UWPprojects 使用 PackageReference,所以它不起作用。

    改为,作者应将 contentFiles 节点添加到 nupkg 文件中。请参阅one documenttwo documentthree document

    建议

    1)您必须联系nuget包的作者,将contentFiles添加到nuget包中。

    2) 由于解决方案可能需要很长时间,您可以尝试使用packages.config nuget 管理格式。虽然它可能有一些问题,但值得一试,它是获得你想要的东西的快速方法并且请备份你的项目。

    a) 记住您在 uwp 项目中安装的任何 nuget 包及其版本。

    b)然后,进入uwp项目的csproj文件

    comment or delete these xml nodes:
    
    
      <PropertyGroup>
        <RestoreProjectStyle>PackageReference</RestoreProjectStyle>
      </PropertyGroup>
    

    并像这样删除所有 PackageReference 节点:

    <ItemGroup>
        <PackageReference Include="Microsoft.NETCore.UniversalWindowsPlatform">
          <Version>6.2.10</Version>
        </PackageReference>
      </ItemGroup>
    ......
    ......
    <ItemGroup>
    

    c)关闭VS,删除解决方案文件夹下的.vs隐藏文件夹,uwp项目的binobj文件夹。

    d)重启VS,输入Tools-->Options-->Nuget Package Manager-->General,将包管理改成@ 987654344@.

    e) 然后通过packages.config 安装这些nuget 包。

    注意:请先安装Microsoft.NETCore.UniversalWindowsPlatformnuget包版本6.2.8。之后,安装其他 nuget 包,包括 MvvmLight

    并且您将看到来自 nuget 包的内容文件:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多