예제 #1
0
 public static ActionResult AppSearch_DB(Session session, bool databaseShouldBeNew)
 {
     RunDatabaseAction(
         session,
         featureName =>
     {
         session.SetPropertyValue(DatabaseSetupInfo.FeaturePropertyName, featureName);
         if (session.IsRemoving() || session.IsPatching() || session.IsOlderVersionDetected())
         {
             DatabaseSetupInfo.CopyRegistryToProperties(session, featureName);
             DatabaseSetupInfo databaseSetupInfo = DatabaseSetupInfo.CreateFromCurrentDetails(session);
             DatabaseSetupInfo.AddFeatureDetails(session, databaseSetupInfo);
         }
         else if (session.UiLevel() != InstallUILevel.Full)
         {
             bool allowPropNameWithoutFeature    = DatabaseSetupInfo.GetDatabaseFeatureNames(session).Length == 1;
             DatabaseSetupInfo databaseSetupInfo = DatabaseSetupInfo.CreateFromCurrentDetails(session, featureName, allowPropNameWithoutFeature);
             if (TestConnectionString(session, databaseSetupInfo, databaseShouldBeNew, false))
             {
                 DatabaseSetupInfo.AddFeatureDetails(session, databaseSetupInfo);
             }
         }
     }
         );
     return(ActionResult.Success);
 }
예제 #2
0
        public static ActionResult AfterDatabaseDialog(Session session, bool databaseShouldBeNew)
        {
            var databaseSetupInfo = DatabaseSetupInfo.CreateFromCurrentDetails(session);

            databaseSetupInfo.UseExistingDatabase = false;

            if (TestConnectionString(session, databaseSetupInfo, databaseShouldBeNew, true))
            {
                DatabaseSetupInfo.AddFeatureDetails(session, databaseSetupInfo);
            }
            return(ActionResult.Success);
        }