private ScanInBuilder(
                IMigrationRunnerBuilder builder,
                IAssemblySourceItem currentSourceItem,
                IEmbeddedResourceProvider sourceItem)
            {
                _builder   = builder;
                SourceItem = currentSourceItem;

                _builder.DanglingAssemblySourceItem = null;
                Services.AddSingleton(sourceItem);
            }
            private ScanInBuilder(
                IMigrationRunnerBuilder builder,
                IAssemblySourceItem currentSourceItem,
                IVersionTableMetaDataSourceItem sourceItem)
            {
                _builder   = builder;
                SourceItem = currentSourceItem;

                _builder.DanglingAssemblySourceItem = null;
                Services.AddSingleton(sourceItem);
            }
            private ScanInBuilder(
                IMigrationRunnerBuilder builder,
                IAssemblySourceItem currentSourceItem,
                ITypeSourceItem <IConventionSet> sourceItem)
            {
                _builder   = builder;
                SourceItem = currentSourceItem;

                _builder.DanglingAssemblySourceItem = null;
                Services.AddSingleton(sourceItem);
            }
            public ScanInBuilder(IMigrationRunnerBuilder builder, IAssemblySourceItem currentSourceItem)
            {
                if (builder.DanglingAssemblySourceItem != null)
                {
                    builder.Services
                    .AddSingleton(builder.DanglingAssemblySourceItem);
                }

                _builder = builder;
                _builder.DanglingAssemblySourceItem = currentSourceItem;
                SourceItem = currentSourceItem;
            }