0
我正在使用Ninject创建具有构造函数参数的类的实例。这个类检查它的参数值,如果它是无效的,它会抛出一个异常。我面临的唯一问题是Ninject吞噬异常并为我的对象返回null。我希望我的excletion像c#中的其他异常一样传播。有没有办法做到这一点?Ninject不会传播异常
的代码看起来像这样(只是一个例子,这是不实际的代码)
public class Module : NinjectModule
{
public override void Load()
{
Bind<IMyClass>().To<MyClass>();
}
}
public class MyClass : IMyClass
{
public MyClass(object value)
{
if(value == null)
throw new ArgumentNullException("value");
}
}
public class Program
{
public void Method()
{
object myObject = null;
IMyClass instance = GetKernel().
Get<IMyClass>(new ConstructorArgument("value", myObject));
// here the instance variable is null and my
// exception has been swallowed
}
}
然后我会尝试更新到最新版本。代码只是我在写这个问题时想到的一个例子,它不是实际的代码......但感谢您指出这一点,我会解决它 – rarrosi