当前位置: 首页>>代码示例>>C#>>正文


C# Container.RegisterTransient方法代码示例

本文整理汇总了C#中Container.RegisterTransient方法的典型用法代码示例。如果您正苦于以下问题:C# Container.RegisterTransient方法的具体用法?C# Container.RegisterTransient怎么用?C# Container.RegisterTransient使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Container的用法示例。


在下文中一共展示了Container.RegisterTransient方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Test_CaptiveDependency_Transient_Transient

 public void Test_CaptiveDependency_Transient_Transient()
 {
     var container = new Container(log: Write);
     container.RegisterTransient<ClassA>();
     container.RegisterTransient<ClassB>();
     container.Resolve<ClassA>();
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:7,代码来源:CaptiveDependencyTest.cs

示例2: T04_Concrete_Interface

 public void T04_Concrete_Interface()
 {
     var container = new Container(log: Write);
     container.RegisterTransient<ISomeClass>();
     container.RegisterTransient<SomeClass>();
     var instance5 = container.Resolve<SomeClass>();
     var instance6 = container.Resolve<ISomeClass>();
     Assert.NotEqual(instance6, instance5);
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:9,代码来源:TransientTest.cs

示例3: T03_Interface

 public void T03_Interface()
 {
     var container = new Container(log: Write);
     container.RegisterTransient<ISomeClass>();
     Assert.Throws<TypeAccessException>(() => container.RegisterTransient<ISomeClass>()).WriteMessageTo(Write);
     var instance3 = container.Resolve<ISomeClass>();
     var instance4 = container.Resolve<ISomeClass>();
     Assert.NotEqual(instance3, instance4);
     Assert.Throws<TypeAccessException>(() => container.Resolve<SomeClass>()).WriteMessageTo(Write);
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:10,代码来源:TransientTest.cs

示例4: Test_CaptiveDependency_Singleton_Transient

 public void Test_CaptiveDependency_Singleton_Transient()
 {
     var container = new Container(log: Write);
     container.RegisterSingleton<ClassA>();
     container.RegisterTransient<ClassB>();
     Assert.Throws<TypeAccessException>(() => container.Resolve<ClassA>()).WriteMessageTo(Write);
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:7,代码来源:CaptiveDependencyTest.cs

示例5: T00_injection

 public void T00_injection()
 {
     var container = new Container();
     container.RegisterSingleton<SomeClass2>();
     container.RegisterTransient<SomeClass>();
     var instance = container.Resolve<SomeClass2>();
     Assert.NotEqual(instance.Factory(), instance.Factory());
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:8,代码来源:TypeFactoryInjectionTest.cs

示例6: T02_Concrete

 public void T02_Concrete()
 {
     var container = new Container(log: Write);
     container.RegisterTransient<SomeClass>();
     var instance1 = container.Resolve<SomeClass>();
     var instance2 = container.Resolve<SomeClass>();
     Assert.NotEqual(instance1, instance2);
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:8,代码来源:TransientTest.cs

示例7: T01_transient_factory

 public void T01_transient_factory()
 {
     var container = new Container();
     container.RegisterTransient<ISomeClass, SomeClass>();
     var factory = container.Resolve<Func<ISomeClass>>();
     Assert.IsType(typeof(SomeClass), factory());
     Assert.NotEqual(factory(), factory());
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:8,代码来源:TypeFactoryWithInterfaceTest.cs

示例8: T01_factory_from_transient

 public void T01_factory_from_transient()
 {
     var container = new Container(log: Write);
     container.RegisterTransient<SomeClass>();
     var factory = container.Resolve<Func<SomeClass>>();
     Assert.IsType(typeof(SomeClass), factory());
     Assert.NotEqual(factory(), factory());
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:8,代码来源:TypeFactoryResolveTest.cs

示例9: SetUp

        public void SetUp()
        {
            binder = new Container();
            binder.RegisterTransient<ITestInterface, TestClass>();
            factory = new GameObjectFactory(binder);
            sw = new Stopwatch();
            prefab = new GameObject();
            prefab.AddComponent<TestMono>();

            instances = new GameObject[500000];
        }
开发者ID:Bloodyludi,项目名称:UnityBinder,代码行数:11,代码来源:MonoInjectionApproach2PerformanceTests.cs

示例10: T03_Dispose_Other

        public void T03_Dispose_Other()
        {
            var container = new Container(defaultLifestyle: DefaultLifestyle.Singleton, log: Write);
            container.RegisterTransient<ClassA>();
            var instance = container.Resolve<ClassA>();
            container.Dispose();
            Assert.False(instance.IsDisposed);

            container.RegisterFactory(() => instance);
            container.Dispose();
            Assert.False(instance.IsDisposed);
        }
开发者ID:dshe,项目名称:StandardContainer,代码行数:12,代码来源:DisposeTest.cs

示例11: T01_Already_Registered

 public void T01_Already_Registered()
 {
     var container = new Container(log: Write);
     container.RegisterTransient<SomeClass>();
     Assert.Throws<TypeAccessException>(() => container.RegisterTransient<SomeClass>()).WriteMessageTo(Write);
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:6,代码来源:TransientTest.cs

示例12: T02_singleton_factory

 public void T02_singleton_factory()
 {
     var container = new Container();
     container.RegisterTransient<ISomeClass>();
     container.Resolve<Func<ISomeClass>>();
 }
开发者ID:dshe,项目名称:StandardContainer,代码行数:6,代码来源:TypeFactoryWithInterfaceTest.cs


注:本文中的Container.RegisterTransient方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。