• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C# Hosting.TypeCatalog类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中System.ComponentModel.Composition.Hosting.TypeCatalog的典型用法代码示例。如果您正苦于以下问题:C# TypeCatalog类的具体用法?C# TypeCatalog怎么用?C# TypeCatalog使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



TypeCatalog类属于System.ComponentModel.Composition.Hosting命名空间,在下文中一共展示了TypeCatalog类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: SetupMultipleFactories

 public void SetupMultipleFactories()
 {
     var catalog = new TypeCatalog(typeof(PartA), typeof(PartB), typeof(PartThatUsesACollectionOfFactories));
     var ep = new ExportFactoryProvider();
     _container = new CompositionContainer(catalog, ep);
     ep.SourceProvider = _container;
 }
开发者ID:juristr,项目名称:codehacks,代码行数:7,代码来源:ExportFactoryTests.cs


示例2: WhenItemsInCollection_TryGetReturnsTrueAndCatalog

        public void WhenItemsInCollection_TryGetReturnsTrueAndCatalog()
        {
            // Prepare
            ModuleInfo moduleInfo1 = new ModuleInfo();
            ModuleInfo moduleInfo2 = new ModuleInfo();
            ModuleInfo moduleInfo3 = new ModuleInfo();

            ComposablePartCatalog catalog1 = new TypeCatalog();
            ComposablePartCatalog catalog2 = new TypeCatalog();
            ComposablePartCatalog catalog3 = new TypeCatalog();

            DownloadedPartCatalogCollection target = new DownloadedPartCatalogCollection();

            target.Add(moduleInfo1, catalog1);
            target.Add(moduleInfo2, catalog2);
            target.Add(moduleInfo3, catalog3);

            // Act
            bool actual = target.TryGet(moduleInfo3, out catalog3);    
        
            // Verify
            Assert.IsTrue(actual);
            Assert.AreSame(catalog3, target.Get(moduleInfo3));
            
        }
开发者ID:selvendiranj,项目名称:compositewpf-copy,代码行数:25,代码来源:DownloadedPartCatalogCollectionFixture.cs


示例3: Main

		static void Main()
		{
            var engine = new GUILayer.EngineDevice();
            GC.KeepAlive(engine);

            var catalog = new TypeCatalog(
                typeof(ShaderPatcherLayer.Manager),
                typeof(ShaderFragmentArchive.Archive),
                typeof(NodeEditorCore.ShaderFragmentArchiveModel),
                typeof(NodeEditorCore.ModelConversion),
                typeof(NodeEditorCore.ShaderFragmentNodeCreator),
                typeof(NodeEditorCore.DiagramDocument),
                typeof(ExampleForm)
            );

            using (var container = new CompositionContainer(catalog))
            {
                container.ComposeExportedValue<ExportProvider>(container);
                container.ComposeExportedValue<CompositionContainer>(container);

                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(container.GetExport<ExampleForm>().Value);
            }

            engine.Dispose();
		}
开发者ID:coreafive,项目名称:XLE,代码行数:27,代码来源:Program.cs


示例4: TypeCatalog

        public void When_removing_a_part_from_the_intercepted_catalog_intercepting_catalog_is_recomposed_and_removes_that_part()
        {
            var innerCatalog1 = new TypeCatalog(typeof(RecomposablePart1), typeof(RecomposablePartImporter));
            var innerCatalog2 = new TypeCatalog(typeof(RecomposablePart2));
            var cfg = new InterceptionConfiguration().AddInterceptor(new RecomposablePartInterceptor());
            var aggregateCatalog = new AggregateCatalog(innerCatalog1, innerCatalog2);
            var catalog = new InterceptingCatalog(aggregateCatalog, cfg);
            container = new CompositionContainer(catalog);

            var importer = container.GetExportedValue<RecomposablePartImporter>();
            Assert.That(importer, Is.Not.Null);
            Assert.That(importer.Parts, Is.Not.Null);
            Assert.That(importer.Parts.Length, Is.EqualTo(2));
            Assert.That(importer.Parts[0].Count, Is.EqualTo(1));
            Assert.That(importer.Parts[1].Count, Is.EqualTo(1));
            Assert.That(catalog.Parts.Count(), Is.EqualTo(3));

            // Recompose
            aggregateCatalog.Catalogs.Remove(innerCatalog2);

            Assert.That(importer, Is.Not.Null);
            Assert.That(importer.Parts, Is.Not.Null);
            Assert.That(importer.Parts.Length, Is.EqualTo(1));
            Assert.That(importer.Parts[0].Count, Is.EqualTo(1));
            Assert.That(catalog.Parts.Count(), Is.EqualTo(2));
        }
开发者ID:doublekill,项目名称:MefContrib,代码行数:26,代码来源:RecompositionTests.cs


示例5: Prepare

        public override void Prepare()
        {
            var basic = this.CreateBasic();

            var propertyInjectionCatalog = new TypeCatalog(
                typeof(ComplexPropertyObject1),
                typeof(ComplexPropertyObject2),
                typeof(ComplexPropertyObject3),
                typeof(ServiceA),
                typeof(ServiceB),
                typeof(ServiceC),
                typeof(SubObjectA),
                typeof(SubObjectB),
                typeof(SubObjectC));

            var multipleCatalog = new TypeCatalog(
                typeof(SimpleAdapterOne),
                typeof(SimpleAdapterTwo),
                typeof(SimpleAdapterThree),
                typeof(SimpleAdapterFour),
                typeof(SimpleAdapterFive),
                typeof(ImportMultiple1),
                typeof(ImportMultiple2),
                typeof(ImportMultiple3));

            var openGenericCatalog = new TypeCatalog(typeof(ImportGeneric<>), typeof(GenericExport<>));

            this.container = new CompositionContainer(
                new AggregateCatalog(basic.Item1, basic.Item2, basic.Item3, propertyInjectionCatalog, multipleCatalog, openGenericCatalog), true);
        }
开发者ID:CodeDux,项目名称:IocPerformance,代码行数:30,代码来源:MefContainerAdapter.cs


示例6: GetCatalog

        protected override AggregateCatalog GetCatalog()
        {
            var typeCatalog = new TypeCatalog(
                typeof(SettingsService),                // persistent settings and user preferences dialog
                typeof(CommandService),                 // handles commands in menus and toolbars
                typeof(ControlHostService),             // docking control host
                typeof(AtfUsageLogger),                 // logs computer info to an ATF server
                typeof(CrashLogger),                    // logs unhandled exceptions to an ATF server
                typeof(UnhandledExceptionService),      // catches unhandled exceptions, displays info, and gives user a chance to save
                typeof(ContextRegistry),                // central context registry with change notification
                typeof(StandardFileExitCommand),        // standard File exit menu command
                typeof(FileDialogService),              // standard Windows file dialogs
                typeof(DocumentRegistry),               // central document registry with change notification
                typeof(StandardFileCommands),           // standard File menu commands for New, Open, Save, SaveAs, Close
                typeof(AutoDocumentService),            // opens documents from last session, or creates a new document, on startup
                typeof(RecentDocumentCommands),         // standard recent document commands in File menu
                typeof(MainWindowTitleService),         // tracks document changes and updates main form title
                typeof(WindowLayoutService),            // service to allow multiple window layouts
                typeof(WindowLayoutServiceCommands),    // command layer to allow easy switching between and managing of window layouts
                typeof(SchemaLoader),                   // loads schema and extends types
                typeof(MainWindow),                     // main app window (analog to 'MainForm' in WinFormsApp)
                typeof(Editor),                         // Sample editor class that creates and saves application documents
                typeof(PythonService),                  // scripting service for automated tests
                typeof(ScriptConsole),                  // provides a dockable command console for entering Python commands
                typeof(AtfScriptVariables),             // exposes common ATF services as script variables
                typeof(AutomationService)               // provides facilities to run an automated script using the .NET remoting service
            );

            return new AggregateCatalog(typeCatalog, StandardInteropParts.Catalog, StandardViewModels.Catalog);
        }
开发者ID:vincenthamm,项目名称:ATF,代码行数:30,代码来源:App.xaml.cs


示例7: CanImportSampleData

        public void CanImportSampleData()
        {
            // Arrange
            string httpClientFactoryContract = AttributedModelServices.GetContractName(typeof(IHttpClientFactory));
            string routeServiceFactoryContract = AttributedModelServices.GetContractName(typeof(IRouteServiceFactory));

            using (ApplicationCatalog initialCatalog = Program.BuildCompositionCatalog())
            using (FilteredCatalog filteredCatalog = initialCatalog.Filter(d => !d.Exports(httpClientFactoryContract) && !d.Exports(routeServiceFactoryContract)))
            using (TypeCatalog httpClientFactoryCatalog = new TypeCatalog(typeof(WtaResultFromEmbeddedResourceFactory)))
            using (TypeCatalog routeServiceFactoryCatalog = new TypeCatalog(typeof(RouteServiceFromCalculatedDistanceFactory)))
            using (AggregateCatalog aggregateCatalog = new AggregateCatalog(filteredCatalog, httpClientFactoryCatalog, routeServiceFactoryCatalog))
            using (CompositionContainer container = new CompositionContainer(aggregateCatalog))
            {
                // Act
                ITrailsImporter importer = container.GetExportedValue<ITrailsImporter>();
                importer.Run();
            }

            using (MyTrailsContext context = new MyTrailsContext())
            {
                // Assert
                ImportLogEntry logEntry = context.ImportLog
                    .OrderByDescending(le => le.Id)
                    .FirstOrDefault();

                Assert.IsNotNull(logEntry);
                Assert.IsNull(logEntry.ErrorString, message: logEntry.ErrorString);
                Assert.AreEqual(0, logEntry.ErrorsCount);

                Assert.IsTrue(context.Trails.Any());
                Assert.IsTrue(context.Guidebooks.Any());
                Assert.IsTrue(context.Passes.Any());
                Assert.IsTrue(context.TripReports.Any());
            }
        }
开发者ID:swegner,项目名称:MyTrails,代码行数:35,代码来源:E2ETests.cs


示例8: UnityContainer

        public void Unity_registered_components_take_precedence_over_MEF_registered_components_if_querying_for_a_single_component_registered_in_both_containers()
        {
            // Setup
            var unityContainer = new UnityContainer();
            var typeCatalog = new TypeCatalog(typeof (Singleton));

            // Register catalog and types
            unityContainer.RegisterCatalog(typeCatalog);
            unityContainer.RegisterType<ISingleton, Singleton>(new ContainerControlledLifetimeManager());

            // Reset count
            Singleton.Count = 0;

            Assert.That(Singleton.Count, Is.EqualTo(0));
            var singleton = unityContainer.Resolve<ISingleton>();

            Assert.That(singleton, Is.Not.Null);
            Assert.That(Singleton.Count, Is.EqualTo(1));

            var mef = unityContainer.Resolve<CompositionContainer>();
            var mefSingleton = mef.GetExportedValue<ISingleton>();

            Assert.That(Singleton.Count, Is.EqualTo(1));
            Assert.That(singleton, Is.SameAs(mefSingleton));
        }
开发者ID:doublekill,项目名称:MefContrib,代码行数:25,代码来源:ResolutionOrderTests.cs


示例9: CreateGenericPart

 private void CreateGenericPart(Type importDefinitionType)
 {
     var type = TypeHelper.BuildGenericType(importDefinitionType, _genericTypes);
     _manufacturedParts.Add(type);
     var typeCatalog = new TypeCatalog(type);
     _catalog.Catalogs.Add(typeCatalog);
 }
开发者ID:glennblock,项目名称:MefContrib,代码行数:7,代码来源:GenericExportHandler.cs


示例10: SetupSingleFactory

 public void SetupSingleFactory()
 {
     var catalog = new TypeCatalog(typeof (PartA), typeof(PartThatUsesAFactory));
     var ep = new ExportFactoryProvider();
     _container = new CompositionContainer(catalog, ep);
     ep.SourceProvider = _container;
 }
开发者ID:juristr,项目名称:codehacks,代码行数:7,代码来源:ExportFactoryTests.cs


示例11: GetCatalog

        /// <summary>
        /// Gets MEF AggregateCatalog for application</summary>
        protected override AggregateCatalog GetCatalog()
        {
            // Because this app references both Atf.Gui.WinForms and Atf.Gui.Wpf, we need to explicitly call
            // this function to register resources. If only one or the other assembly were referenced, this
            // would be handled automatically by Atf.Gui.Resources, but since both are included it doesn't
            // know which one to choose.
            Sce.Atf.Wpf.Resources.Register();

            var typeCatalog = new TypeCatalog(
                typeof(SettingsService),                // persistent settings and user preferences dialog
                typeof(CommandService),                 // handles commands in menus and toolbars
                typeof(ControlHostService),             // docking control host
                typeof(AtfUsageLogger),                 // logs computer info to an ATF server
                typeof(CrashLogger),                    // logs unhandled exceptions to an ATF server
                typeof(UnhandledExceptionService),      // catches unhandled exceptions, displays info, and gives user a chance to save
                typeof(ContextRegistry),                // central context registry with change notification
                typeof(StandardFileExitCommand),        // standard File exit menu command
                typeof(FileDialogService),              // standard Windows file dialogs
                typeof(DocumentRegistry),               // central document registry with change notification
                typeof(StandardFileCommands),           // standard File menu commands for New, Open, Save, SaveAs, Close
                typeof(AutoDocumentService),            // opens documents from last session, or creates a new document, on startup
                typeof(RecentDocumentCommands),         // standard recent document commands in File menu
                typeof(MainWindowTitleService),         // tracks document changes and updates main form title
                typeof(WindowLayoutService),            // service to handle window layouts
                typeof(SchemaLoader),                   // loads schema and extends types
                typeof(MainWindow),                     // main app window (analog to 'MainForm' in WinFormsApp)
                typeof(Editor),                         // Sample editor class that creates and saves application documents
                typeof(PythonService),                  // scripting service for automated tests
                typeof(ScriptConsole),                  // provides a dockable command console for entering Python commands
                typeof(AtfScriptVariables),             // exposes common ATF services as script variables
                typeof(AutomationService)               // provides facilities to run an automated script using the .NET remoting service
            );

            return new AggregateCatalog(typeCatalog, StandardInteropParts.Catalog, StandardViewModels.Catalog);
        }
开发者ID:Joxx0r,项目名称:ATF,代码行数:37,代码来源:App.xaml.cs


示例12: DefaultLifetimeForMefComponentsIsSingleton

 public void DefaultLifetimeForMefComponentsIsSingleton()
 {
     var builder = new ContainerBuilder();
     var catalog = new TypeCatalog(typeof(HasDefaultCreationPolicy));
     builder.RegisterComposablePartCatalog(catalog);
     AssertDisposalTrackerIsSingleton(builder);
 }
开发者ID:RoymanJing,项目名称:Autofac,代码行数:7,代码来源:DisposalRegistrationTests.cs


示例13: AnyCreationPolicyDefaultsToShared

 public void AnyCreationPolicyDefaultsToShared()
 {
     var builder = new ContainerBuilder();
     var catalog = new TypeCatalog(typeof(HasAnyCreationPolicy));
     builder.RegisterComposablePartCatalog(catalog);
     AssertDisposalTrackerIsSingleton(builder);
 }
开发者ID:RoymanJing,项目名称:Autofac,代码行数:7,代码来源:DisposalRegistrationTests.cs


示例14: RegisterTypeCatalogContaining

 private static IContainer RegisterTypeCatalogContaining(params Type[] types)
 {
     var builder = new ContainerBuilder();
     var catalog = new TypeCatalog(types);
     builder.RegisterComposablePartCatalog(catalog);
     var container = builder.Build();
     return container;
 }
开发者ID:RoymanJing,项目名称:Autofac,代码行数:8,代码来源:CircularDependencyRegistrationTests.cs


示例15: GetDocumentStore

        public static EmbeddableDocumentStore GetDocumentStore(Type clientIndex)
        {
            var store = GetDocumentStore();
            var catalogue = new TypeCatalog(new[] { clientIndex });

            IndexCreation.CreateIndexes(new CompositionContainer(catalogue), store);
            return store;
        }
开发者ID:rhmg,项目名称:ukps-spike,代码行数:8,代码来源:document_store.cs


示例16: TestSetUp

 public void TestSetUp()
 {
     ConcreteTypeHandler = new ConcreteTypeExportHandler();
     var typeCatalog = new TypeCatalog(typeof(CustomerProcessor));
     var orderProcessorContract = AttributedModelServices.GetContractName(typeof(CustomerProcessor));
     var orderProcessPartDefinition = typeCatalog.Parts.Single(p => p.ExportDefinitions.Any(d => d.ContractName == orderProcessorContract));
     RepositoryImportDefinition = orderProcessPartDefinition.ImportDefinitions.First();
 }
开发者ID:doublekill,项目名称:MefContrib,代码行数:8,代码来源:ConcreteTypeExportHandlerTests.cs


示例17: MissingDependencyDetected

 public void MissingDependencyDetected()
 {
     var builder = new ContainerBuilder();
     var catalog = new TypeCatalog(typeof(HasMissingDependency));
     builder.RegisterComposablePartCatalog(catalog);
     var container = builder.Build();
     Assert.Throws<ComponentNotRegisteredException>(() => container.Resolve<HasMissingDependency>());
 }
开发者ID:RoymanJing,项目名称:Autofac,代码行数:8,代码来源:SimpleRegistrationTests.cs


示例18: TypeHelperContext

        public TypeHelperContext()
        {
            var catalog = new TypeCatalog(typeof(DummyPart));
            var part = catalog.Parts.First();
            DummyPartImports = part.ImportDefinitions;

            Context();
        }
开发者ID:jbogard,项目名称:MefContrib,代码行数:8,代码来源:TypeHelperSpecs.cs


示例19: TypeCatalog

        public void ContainerDoesNotResolveIngredientToSauceBéarnaise()
        {
            var catalog = new TypeCatalog(typeof(Ploeh.Samples.Menu.Mef.Attributed.Unmodified.Concrete.SauceBéarnaise));
            var container = new CompositionContainer(catalog);

            Assert.Throws<ImportCardinalityMismatchException>(() =>
                container.GetExportedValue<Ploeh.Samples.MenuModel.IIngredient>());
        }
开发者ID:mesta1,项目名称:dli.net_sourcecode,代码行数:8,代码来源:MenuFacts.cs


示例20: Constructor2_ArrayAsTypesArgument_ShouldNotAllowModificationAfterConstruction

        public void Constructor2_ArrayAsTypesArgument_ShouldNotAllowModificationAfterConstruction()
        {
            var types = new Type[] { PartFactory.GetAttributedExporterType() };
            var catalog = new TypeCatalog(types);

            types[0] = null;

            Assert.IsNotNull(catalog.Parts.First());
        }
开发者ID:nlhepler,项目名称:mono,代码行数:9,代码来源:TypeCatalogTests.cs



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# Primitives.ComposablePartDefinition类代码示例发布时间:2022-05-26
下一篇:
C# Hosting.ExportProvider类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap