/// <summary> /// Check a new website, include the lastest log id. /// </summary> /// <param name="OldWebSite"></param> /// <param name="NewWebSite"></param> /// <param name="LatestLogId"></param> public static void CheckOut(SiteDb OldDb, SiteDb NewDb, long LatestLogId, bool SelfInclude = true) { foreach (var item in OldDb.ActiveRepositories()) { var type = item.ModelType; if (Kooboo.Lib.Reflection.TypeHelper.HasInterface(item.ModelType, typeof(ICoreObject))) { var destrepo = NewDb.GetRepository(item.StoreName); if (destrepo != null) { item.CheckOut(LatestLogId, destrepo, true); } } } foreach (var item in OldDb.TransferTasks.All()) { NewDb.TransferTasks.AddOrUpdate(item); } var setting = Sync.ImportExport.GetSiteSetting(OldDb.WebSite); Sync.ImportExport.SetSiteSetting(NewDb.WebSite, setting); Kooboo.Data.GlobalDb.WebSites.AddOrUpdate(NewDb.WebSite); }