private static void ClearDatabase(PluginDatabaseModelDataContext context)
        {
            var plugins = from plugin in context.Plugins select plugin;

            Array.ForEach(plugins.ToArray(), x => context.Plugins.DeleteOnSubmit(x));
            context.SubmitChanges();
        }
        public virtual void OnAfterScenario()
        {
            ClearTpDb(new TpDatabaseDataContext(TpConnectionString));
            var context = new PluginDatabaseModelDataContext(PluginConnectionString);

            ClearDatabase(context);
        }
        public void Destroy()
        {
            var configuration = ObjectFactory.GetInstance <IDatabaseConfiguration>();

            using (var context = new PluginDatabaseModelDataContext(configuration.ConnectionString))
            {
                foreach (var plugin in context.Plugins)
                {
                    context.Plugins.DeleteOnSubmit(plugin);
                }
                context.SubmitChanges();
            }
        }
        private static void ClearPluginDb(string pluginConnectionString)
        {
            var context = new PluginDatabaseModelDataContext(pluginConnectionString);

            if (!context.DatabaseExists())
            {
                context.CreateDatabase();
                context.SubmitChanges();
            }
            else
            {
                ClearDatabase(context);
            }
        }