本文整理汇总了C#中System.IocContainer.TryResolve方法的典型用法代码示例。如果您正苦于以下问题:C# IocContainer.TryResolve方法的具体用法?C# IocContainer.TryResolve怎么用?C# IocContainer.TryResolve使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.IocContainer
的用法示例。
在下文中一共展示了IocContainer.TryResolve方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TryResolveByNameNotRegisteredReturnsNull
public void TryResolveByNameNotRegisteredReturnsNull()
{
using (var container = new IocContainer())
{
// Arrange
container.Register<IFoo>("Foo", c => new Foo1());
// Act
IFoo obj1;
IFoo obj2;
var result1 = container.TryResolve<IFoo>(out obj1);
var result2 = container.TryResolve<IFoo>("Wrong", out obj2);
// Assert
Assert.IsFalse(result1);
Assert.IsFalse(result2);
Assert.IsNull(obj1);
Assert.IsNull(obj2);
}
}
示例2: TryResolveByTypeNotRegisteredReturnsNull
public void TryResolveByTypeNotRegisteredReturnsNull()
{
using (var container = new IocContainer())
{
// Act
IFoo obj;
bool result = container.TryResolve<IFoo>(out obj);
// Assert
Assert.IsFalse(result);
Assert.IsNull(obj);
}
}
示例3: TryResolveByTypeReturnsExpectedInstance
public void TryResolveByTypeReturnsExpectedInstance()
{
using (var container = new IocContainer())
{
// Arrange
container.Register<IFoo>(x => new Foo1());
// Act
IFoo obj;
var result = container.TryResolve<IFoo>(out obj);
// Assert
Assert.IsInstanceOfType(obj, typeof(Foo1));
Assert.IsTrue(result);
}
}
示例4: TryResolveByNameReturnsExpectedInstance
public void TryResolveByNameReturnsExpectedInstance()
{
using (var container = new IocContainer())
{
// Arrange
var foo = new Foo1();
container.RegisterInstance<IFoo>("Foo", foo);
// Act
IFoo obj;
var result = container.TryResolve<IFoo>("Foo", out obj);
// Assert
Assert.AreSame(obj, foo);
Assert.IsTrue(result);
}
}