我在许多不同的项目中不断出错,而且似乎是随机发生的。所有项目都是WPF。
在设计时它会抛出水晶报告错误并拒绝向我显示设计窗口。在运行时,一切都像魅力一样。有人知道怎么修这个东西吗 ?
这是设计窗口中显示的错误:
System.Reflection.Adds.UnresolvedAssemblyException
Type universe cannot resolve assembly: CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304
例如,现在我正在尝试处理用户控件,因此在我看到它之前必须关闭并重新打开窗口多达 25-30 次变得非常令人沮丧,并且当它可以时我 ouch 1 到标签和砰,它又消失了。“重新加载设计器”链接工作 1/10,但仅在更改 1 个标签后修复这种方式肯定会失败。
这里是用户控制代码(我知道人们会询问发生错误的代码,但它会在任何地方发生,所以我只给出这个,因为它是我正在尝试构建的新代码)
<UserControl x:Class="CustomTools.UserControl.ComponentSelection.UCSelections"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008">
<DataGrid >
<StackPanel Orientation="Horizontal">
<Image Name="imgSuccesOrFail" Height="32" Width="32" Margin="10,0,10,0" >
</Image>
<StackPanel>
<StackPanel Orientation="Horizontal">
<Label Content="Component Name : "/>
<Label Content="comp1"/>
</StackPanel>
<StackPanel Orientation="Horizontal">
<Label Content="Component Name : "/>
<Label Content="comp1"/>
</StackPanel>
</StackPanel>
</StackPanel>
</DataGrid>
</UserControl>
打我的第一件事是我不使用水晶报告的任何视觉控制,这个控制也与它无关。
这是CS作为证明:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Drawing;
namespace CustomTools.UserControl.ComponentSelection
{
/// <summary>
/// Interaction logic for UCSelections.xaml
/// </summary>
public partial class UCSelections : System.Windows.Controls.UserControl
{
public UCSelections()
{
InitializeComponent();
}
}
}
我已经尝试将 .net 4 切换到 .net 4 客户端配置文件,我是否看过关于可能是它的帖子,但他们的问题与我的完全不同。
我尝试编译:32 位、64 位和任何 CPU 编译。重建解决方案。
任何想法如何解决这个问题。顺便说一句,我不是唯一一个遇到这个问题的人,这里的其他几个开发人员也有同样的问题,但不需要相同的文件。一些用户控制工作 100% 的时间,他们不使用水晶。我知道使用了水晶,但有很多控件让我知道在哪里。我还没有看到项目的全部范围。
编辑#1:我还要补充一点,当我开始工作时,这个问题在早上非常罕见,我编译和运行不同项目的次数越多,它开始变得越频繁。但是重新启动计算机并没有帮助,所以这似乎更巧合,这在早上从未发生过。
编辑#2:我打开和关闭项目几次以显示错误并且我设法得到它。现在我得到以下信息:
引发了“MS.Internal.Validate+ValidationFailure”类型的异常。在 MS.Internal.Design.DocumentModel.DocumentTreeManagers.DocumentNodeInfo.Insert(DocumentNode item, DocumentNode after, DocumentNodeDictionary table) 在 MS.Internal.Design.DocumentModel.DocumentTreeManagers.ItemUpdater.ApplyDelta(INodeHost nodeHost, DeltaItemCollection delta, ModifiableDocumentTree root, DocumentNodeDictionary oldTable , Boolean updateTable, DocumentNodeDictionary deletedItems, 比较
1 compare) at Microsoft.Windows.Design.DocumentModel.Trees.DocumentTreeManager.ApplyDelta(Delta delta, Comparison
1 比较)在 Microsoft.Windows.Design.Platform.ViewProducerBase.ApplyUpdate(Delta delta) 在 Microsoft.Windows.Design.Platform.ViewProducerBase.IncrementalRebuild(DocumentTreeManager 树,Damage damage) 在 Microsoft.Windows.Design.Platform.ViewProducerBase.UpdateView (DocumentTreeManager 树,损坏损坏)在 Microsoft.Windows.Design.DocumentModel.ViewProducer.UpdateView(UpdateDamageArguments args)
这仍然与上面描述的 XAML/CS 相同。从昨天开始就没有碰过它,因为那个错误让我非常恼火,我决定去做一些更有用的事情,而不是浪费时间。
编辑#3:
尝试了@N4TKD 解决方案我只安装了一个水晶报告,所以我删除了对水晶报告的所有引用,删除了我项目中的大量控件,但仍然存在问题。然后我重新签出项目并验证所有项目组装。他们都指向Crystal Reports for .NET Framework 4. 13.0.2000.0
有人有同样的问题吗?
顺便说一句,自从上次编辑以来,我没有收到错误MS.Internal.Validate+ValidationFailure
,它只是水晶报告。
还摆脱<image></image>
了用户控件中的错误,将抛出的错误几乎减少到 0