C# 只有在物理设备上测试时,Xamarin中的Ninject才会抛出错误

C# 只有在物理设备上测试时,Xamarin中的Ninject才会抛出错误,c#,xamarin,dependency-injection,ninject,C#,Xamarin,Dependency Injection,Ninject,我在Android和iOS之间的共享项目中使用Ninject没有问题,但是,当我连接iPhone进行测试时,我遇到了一个奇怪的错误: 加载Ninject组件时System.InvalidOperationException错误 IModuleLoader没有可用于创建的实例的构造函数 已注册的实现类型ModuleLoader 建议:1)确保实现类型具有公共 构造器 我的代码相当简单: public static Ninject.StandardKernel GetStandardKernel()

我在Android和iOS之间的共享项目中使用Ninject没有问题,但是,当我连接iPhone进行测试时,我遇到了一个奇怪的错误:

加载Ninject组件时System.InvalidOperationException错误 IModuleLoader没有可用于创建的实例的构造函数 已注册的实现类型ModuleLoader

建议:1)确保实现类型具有公共 构造器

我的代码相当简单:

public static Ninject.StandardKernel GetStandardKernel()
{
    //var settings = new Ninject.NinjectSettings() { LoadExtensions = false };
    var kernel = new Ninject.StandardKernel(new iOS.Ioc.IOSModule());
    return kernel;
}

启用链接器行为链接某些sdk框架只解决了这个问题

您在iOS项目中使用链接吗?我尝试了使用和不使用链接共享代码just方法,该方法在
ModuleLoader
类中编写代码,您可以显示它。感谢Mohamed-我已经将我的链接器设置设置为“链接所有程序集”以排除以前的问题,但忘记将其设置回“仅链接SDK程序集”-我的错误现在已停止(加载Ninject组件IBindingResolver时出错)