當前位置: 首頁>>代碼示例>>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;未經允許,請勿轉載。