gpt4 book ai didi

prism - Prism 7.1 升级缺少引用问题

转载 作者:行者123 更新时间:2023-12-01 15:21:13 27 4
gpt4 key购买 nike

最近想将我的 WPF Prism 应用程序迁移到 7.1,这样做时我遇到了有关 Unity.Abstractions 的丢失引用错误。

将 Prism nuget 软件包升级到 Prism7.1,如下面的 packages.config 所示:

<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="CommonServiceLocator" version="2.0.4" targetFramework="net472" />
<package id="Prism.Core" version="7.1.0.431" targetFramework="net472" />
<package id="Prism.Unity" version="7.1.0.431" targetFramework="net472" />
<package id="Prism.Wpf" version="7.1.0.431" targetFramework="net472" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net472" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net472" />
<package id="Unity.Abstractions" version="4.0.3" targetFramework="net472" />
<package id="Unity.Container" version="5.9.4" targetFramework="net472" />
</packages>

App.xaml代码如下:

<prism:PrismApplication x:Class="WPFPrismDemoApp.App"
x:ClassModifier="internal"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:prism="http://prismlibrary.com/">
<Application.Resources>
</Application.Resources>
</prism:PrismApplication>

App.xaml.cs代码如下:

 public partial class App : PrismApplication
{
protected override Window CreateShell()
{
return null;
}

protected override void InitializeShell(Window shell)
{
base.InitializeShell(shell);
Application.Current.MainWindow = shell;
var container= Container.GetContainer();
}

在执行此操作时,当我尝试通过 Container.GetContainer 访问 Unity 容器时,出现以下异常:类型“IUnityContainer”是在未引用的程序集中定义的。您必须添加对程序集“Unity.Abstractions,版本 3.3.1.0”的引用。我不明白当我将 WPF.Unity nuget 包升级到最新版本时,它会自动将 Unity.Abstractions 升级到 4.0.3.0。

任何人都知道如何通过它。

最佳答案

包 Unity.Container 版本 5.8.x 引用 Unity.Abstractions 版本 3.3.1,而较新的版本引用版本 4.0.3。这破坏了 Prism 中 Bootstrapper 的向后兼容性。如果您想使用较新的版本,则需要使用新的 PrismAplication 类。有点悲伤。

关于prism - Prism 7.1 升级缺少引用问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54625351/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com