IMessageService.ShowXXXX mscorlib.dll 中的 MissingManifestException
MissingManifestException in mscorlib.dll on IMessageService.ShowXXXX
在我的视图模型中,我有一个在构造函数中初始化的 IMessageService:
private IMessageService messageService;
public MyViewModel()
{
messageService = ServiceLocator.Default.ResolveType<IMessageService>();
}
它的 Show
方法有效,但是 ShowError、ShowInformation 和 ShowWarning(任何需要资源的东西,这里是图标)崩溃,MissingManifestException
指向 Catel.Properties.Resources.resources
清单。
是我这边的错误(错误安装Catel)还是因为它是.Net 4.0版本的Catel?令人惊讶的是,我有另一个 Catel for .Net 4.0 项目没有显示此错误。
编辑:Show
,当给定 MessageImage
时,可以完美运行并显示图标。
编辑 2:别管我上次编辑了,现在一切似乎都正常了……没有任何原因。用 MessageImage
调用 Show
会有 "loaded" 资源什么的?这似乎不太可能。
我找到了来源:调试模式下的 CLR 异常中断。
看起来 Catel 有时会抛出一些 已处理的异常 ,如果您在异常设置中检查了公共语言运行时 (Visual Studio menu > Debug > Exception...), 你的调试器会中断这些。
还不错,只需按 F5 (Continue
) 即可通过。
让我百思不得其解的是,这个MissingManifestException
按F5后又坏了。事实上,它似乎 中断多个资源图标 ,看起来它就像一个真正未处理的异常一样继续中断。
但是没有,所以 如果您遇到 Catel 异常,请继续按 F5 或禁用 CLR 异常中断。
编辑:正如Geert建议的那样,您确实不需要禁用每个 CLR 异常中断...只需禁用 MissingManifestException。
在我的视图模型中,我有一个在构造函数中初始化的 IMessageService:
private IMessageService messageService;
public MyViewModel()
{
messageService = ServiceLocator.Default.ResolveType<IMessageService>();
}
它的 Show
方法有效,但是 ShowError、ShowInformation 和 ShowWarning(任何需要资源的东西,这里是图标)崩溃,MissingManifestException
指向 Catel.Properties.Resources.resources
清单。
是我这边的错误(错误安装Catel)还是因为它是.Net 4.0版本的Catel?令人惊讶的是,我有另一个 Catel for .Net 4.0 项目没有显示此错误。
编辑:Show
,当给定 MessageImage
时,可以完美运行并显示图标。
编辑 2:别管我上次编辑了,现在一切似乎都正常了……没有任何原因。用 MessageImage
调用 Show
会有 "loaded" 资源什么的?这似乎不太可能。
我找到了来源:调试模式下的 CLR 异常中断。
看起来 Catel 有时会抛出一些 已处理的异常 ,如果您在异常设置中检查了公共语言运行时 (Visual Studio menu > Debug > Exception...), 你的调试器会中断这些。
还不错,只需按 F5 (Continue
) 即可通过。
让我百思不得其解的是,这个MissingManifestException
按F5后又坏了。事实上,它似乎 中断多个资源图标 ,看起来它就像一个真正未处理的异常一样继续中断。
但是没有,所以 如果您遇到 Catel 异常,请继续按 F5 或禁用 CLR 异常中断。
编辑:正如Geert建议的那样,您确实不需要禁用每个 CLR 异常中断...只需禁用 MissingManifestException。