Xamarin 链接器:找不到类型 MvvmCross.Platform.IoC.MvxPropertyInjector 的默认构造函数
Xamarin Linker: Default constructor not found for type MvvmCross.Platform.IoC.MvxPropertyInjector
这是与 this 相同的问题,但解决方案对我不起作用。我有一个包含以下内容的 LinkerPleaseInclude.cs 文件:
public void Include(MvvmCross.Platform.IoC.MvxPropertyInjector injector)
{
injector = new MvvmCross.Platform.IoC.MvxPropertyInjector();
}
我正在使用 Link All 作为链接器行为,但我的印象是在 LinkerPleaseInclude.cs 中包含上述内容会提示链接器不会将其删除。
不确定这是否重要,但这里有一些平台详细信息:
Xamarin Studio 6.3
MvvmCross 4.4.0
.NETCore UWP 5.3.3
名为 LinkerPleaseInclude.cs
的文件本身不保留任何内容。这只是 Mvvmcross 使用的约定。
因此,如果没有任何内容调用(或保留*)您的 Include
方法,那么链接器将不会标记它(根据需要)并且 MvxPropertyInjector
.ctor 将不会被标记。
*
在方法上添加 [Preserve]
属性将确保链接器包含它(以及它调用的所有内容)。
这是与 this 相同的问题,但解决方案对我不起作用。我有一个包含以下内容的 LinkerPleaseInclude.cs 文件:
public void Include(MvvmCross.Platform.IoC.MvxPropertyInjector injector)
{
injector = new MvvmCross.Platform.IoC.MvxPropertyInjector();
}
我正在使用 Link All 作为链接器行为,但我的印象是在 LinkerPleaseInclude.cs 中包含上述内容会提示链接器不会将其删除。
不确定这是否重要,但这里有一些平台详细信息:
Xamarin Studio 6.3
MvvmCross 4.4.0
.NETCore UWP 5.3.3
名为 LinkerPleaseInclude.cs
的文件本身不保留任何内容。这只是 Mvvmcross 使用的约定。
因此,如果没有任何内容调用(或保留*)您的 Include
方法,那么链接器将不会标记它(根据需要)并且 MvxPropertyInjector
.ctor 将不会被标记。
*
在方法上添加 [Preserve]
属性将确保链接器包含它(以及它调用的所有内容)。