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


C# CompositionContainer.ReleaseExport方法代码示例

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


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

示例1: ReleaseParsleyAsTransientDisposesParsley

        public void ReleaseParsleyAsTransientDisposesParsley()
        {
            var catalog = new TypeCatalog(typeof(Ploeh.Samples.Menu.Mef.Attributed.Lifetime.NonShared.Parsley));
            var container = new CompositionContainer(catalog);

            var x = container.GetExport<IIngredient>();
            var ingredient = x.Value;

            container.ReleaseExport(x);

            var parsley = Assert.IsAssignableFrom<Parsley>(ingredient);
            Assert.True(parsley.IsDisposed);
        }
开发者ID:mesta1,项目名称:dli.net_sourcecode,代码行数:13,代码来源:MenuFacts.cs

示例2: GetReleaseExport_NonSharedPart_ShouldNotRecomposeAfterRelease

        public void GetReleaseExport_NonSharedPart_ShouldNotRecomposeAfterRelease()
        {
            var catalog = new TypeCatalog(typeof(NonSharedPartRecomposable));
            var container = new CompositionContainer(catalog);

            // Setup dependency
            CompositionBatch batch = new CompositionBatch();
            var valueKey = batch.AddExportedValue("Value", 21);
            container.Compose(batch);
            
            var export = container.GetExport<NonSharedPartRecomposable>();
            var exportedValue = export.Value;

            Assert.AreEqual(21, exportedValue.Value);

            container.ReleaseExport(export);

            // Recompose just to ensure we don't blow up, even though we don't expect anything to happen.
            batch = new CompositionBatch();
            batch.RemovePart(valueKey);
            batch.AddExportedValue("Value", 42);
            container.Compose(batch);

            Assert.AreEqual(21, exportedValue.Value, "Value should not be recomposed after ReleaseExport is called on it.");
        }
开发者ID:JackFong,项目名称:FreeRadical,代码行数:25,代码来源:LifetimeTests.cs


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