gpt4 book ai didi

c# - 在强命名程序集中托管时在运行时加载 XAML 标记时出错

转载 作者:太空宇宙 更新时间:2023-11-03 11:54:35 25 4
gpt4 key购买 nike

我有一个混合的 Winform/WPF 应用程序,它经常抛出异常:

Could not load file or assembly <Full Assembly Name> or one of it's dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT 0x80131040) Error at object <Object Name> in markup file <file>.xaml

WPF 部分由一个基本自定义控件和多个从该基本控件继承的用户控件组成。所有 WPF 类和模板都位于同一个程序集中。

此异常仅在我对应用程序中的所有程序集进行强命名后才开始出现。

项目使用的所有程序集都加载到单个 visual studio 解决方案中。

现在是令人困惑的部分。此异常仅在部分时间发生。如果我重建整个解决方案,有时它会是一个很好的构建,一切都会正常工作。其他时候我会重建解决方案,但它会是一个糟糕的构建,WPF 部分将始终抛出此异常。

为了修复它,我最终使用了 Clean Solution 菜单项并重建了多次,直到它给我一个“良好”的构建。

很明显,问题是链接器与以前构建的程序集版本不匹配。但是,我很困惑为什么要这样做。正确设置构建顺序和项目依赖项。

最佳答案

是啊,我以前也见过这种事。不确定它是否适合您,但您可以尝试显式设置所有已签名程序集的版本号而不是自动递增吗?

关于c# - 在强命名程序集中托管时在运行时加载 XAML 标记时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/972228/

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