public SPEvolutionManager(SharePointVersion sharepointVersion, Assembly asm, SPWeb web)
 {
     if (asm == null)
         throw new ArgumentNullException("Assembly file not found");
     evoAssembly = new SPEvolutionAssembly(asm);
     provider = new SPEvolutionProvider(web);
 }
        /// <summary>
        /// Создать миграцию по номеру версии
        /// </summary>
        /// <param name="version">Версия миграции</param>            
        public IEvolution InstantiateMigration(long version, SPEvolutionProvider provider)
        {
            //Require.IsNotNull(provider, "Не задан провайдер СУБД");

                var list = evolutionsTypes.Where(info => info.Version == version).ToList();

                if (list.Count == 0)
                {
                    return null;
                }

                IEvolution migration = (IEvolution)Activator.CreateInstance(list[0].Type);
                migration.EvoContext = provider;
                return migration;
        }