IdeaBlade.Core Assembly > IdeaBlade.Core.Composition Namespace > CompositionContext Class : WithFilter Method |
'Declaration
Public Function WithFilter( _ ByVal exportFilter As Func(Of Export,Boolean) _ ) As CompositionContext
'Usage
Dim instance As CompositionContext Dim exportFilter As Func(Of Export,Boolean) Dim value As CompositionContext value = instance.WithFilter(exportFilter)
public CompositionContext WithFilter( Func<Export,bool> exportFilter )
A global filter is one which applies to discovery of all extensible types.
public class CompositionContextResolver : BaseCompositionContextResolver { public override CompositionContext GetCompositionContext(string compositionContextName) { // Creates a new context from the Default context, with global metadata filtering. if (compositionContextName == "Mock") { var filter = CompositionContext.BuildExportFilter("IsMock", true); return CompositionContext.Default .WithFilter(filter) .WithName("Mock"); } else { return base.GetCompositionContext(compositionContextName); } } } [InheritedExport(typeof(EntityServerQueryInterceptor))] [ExportMetadata("IsMock", true)] public class MockEntityServerQueryInterceptor : EntityServerQueryInterceptor { protected override bool ExecuteQuery() { throw new InvalidOperationException(); } }
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2