Unity 2.0。如何抛出ResolutionFailedException

时间:2010-05-21 12:04:51

标签: unity-container

我有我的应用程序,使用基于统一应用程序块的功能。有时我需要手动抛出ResolutionFailedException。在v1.2中,ResolutionFailedException的构造函数有三个参数--typerequested,namerequested和exception。在v2.0中添加了第四个参数 - buildercontext。我不是手动创建它,所以我没有参考它,也不知道我在哪里可以得到它。粗略地说,我只是以特定的方式重写Resolve方法而且我不干涉政策,策略等的标准机制。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:2)

Actualy这个异常不应该由开发人员调用,无论如何你可以按照以下方式调用它

    throw new ResolutionFailedException(
            typeof (IConcreteService), 
            "IConcreteService", 
            null, 
            new BuilderContext(null, null, null, null,                    NamedTypeBuildKey.Make<IConcreteService>("nameOrNullIfResolvedNotNamedInstance"), null)
            );