我在Mac上的Visual Studio上通过Prism模板包创建了一个xamarin表单解决方案。我收到Fody异常。
错误:Fody:无法在类型“ sdfdf.App”上注入EventInvoker方法。 您可能从基类继承而没有 正确设置“ EventInvokerNames”,或者您使用的是显式 PropertyChanged事件和事件字段对此不可见 实例。正确的“ EventInvokerNames”或实现自己的 此类上的EventInvoker。如果您想隐瞒这个地方 sdfdf.App上的[DoNotNotifyAttribute]。 (sdfdf)
由于fody weaver,我无法编译任何项目。 FodyWeaver
<?xml version="1.0" encoding="utf-8"?>
<Weavers>
<PropertyChanged EventInvokerNames="RaisePropertyChanged" />
<RealmWeaver />
</Weavers>
如果我从fody weaver中删除了PropertyChanged
事件,则应用程序运行正常,但我需要该应用程序。有谁知道如何解决这个问题?
更新
根据建议,我更新了身体编织器并得到以下错误。 FodyWeaver
<?xml version="1.0" encoding="utf-8"?>
<Weavers>
<PropertyChanged/>
<RealmWeaver />
</Weavers>
Error: Fody: An unhandled exception occurred: Exception: Could not resolve type with token 01000041 (from typeref, class/assembly
Fody.TypeSystem,FodyHelpers,Version = 3.1.3.0,Culture = neutral, PublicKeyToken = 1ca091877d12ca03)类型:System.TypeLoadException StackTrace:位于ModuleWeaver.InitEventArgsCache()[0x00000]中 C:\ projects \ propertychanged \ PropertyChanged.Fody \ EventArgsCacheInjector.cs:5 在ModuleWeaver.Execute()在[0x00084] C:\ projects \ propertychanged \ PropertyChanged.Fody \ ModuleWeaver.cs:29
在(包装器动态方法) System.Object.lambda_method(System.Runtime.CompilerServices.Closure,object) 在InnerWeaver.ExecuteWeavers()[0x00087]中 C:\ projects \ fody \ FodyIsolated \ InnerWeaver.cs:200 at InnerWeaver.Execute()[0x0004d] in C:\ projects \ fody \ FodyIsolated \ InnerWeaver.cs:102来源: PropertyChanged.Fody TargetSite:无效的InitEventArgsCache()
答案 0 :(得分:1)
使用Fodyweavers,您只需添加以下内容:
<Weavers>
<PropertyChanged/>
</Weavers>
文档: