private void CopyConfigurationFiles(string configurationFileLocation, string applicationName)
        {
            DirectoryInfo targetDir = new DirectoryInfo(@"Configuration\Application\" + applicationName);

            if (!targetDir.Exists)
                targetDir.Create();

            ConfigurationManager configManager = _workItem.Services.Get<ConfigurationManager>();

            //Copy and register hibernate config
            {
                File.Copy(Path.Combine(configurationFileLocation, "hibernate.xml"), Path.Combine(targetDir.FullName, "hibernate.xml"), true);

                ReflectionConfigurationTypeInfo typeInfo = new ReflectionConfigurationTypeInfo(typeof(HibernateConfiguration));
                typeInfo.ConfigurationSourceType = typeof(FileConfigurationSource);
                configManager.RegisterConfigurationType(typeInfo);
            }

            //Copy and register dynamicmethods
            {
                File.Copy(Path.Combine(configurationFileLocation, "dynamicmethods.xml"), Path.Combine(targetDir.FullName, "dynamicmethods.xml"), true);

                ReflectionConfigurationTypeInfo typeInfo = new ReflectionConfigurationTypeInfo(typeof(DynamicMethodConfiguration));
                typeInfo.ConfigurationSourceType = typeof(FileConfigurationSource);
                configManager.RegisterConfigurationType(typeInfo);
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Register configuration file.
 /// This copies the given file under the fixed path for the application so it can be retrieved, and registers it.
 /// If SourceFolder is not specified then the file will be expected to already be there, and the copy step will be skipped.
 /// </summary>
 /// <param name="configType">Type of configuration (eg HibernateConfiguration).  May be null if not applicable.</param>
 /// <param name="configFile">Absolute path to configuration file.  It will be copied under the local configuration directory.</param>
 private void PrepareConfigurationFile(Type configType, string configFile)
 {
     Directory.CreateDirectory(@"Configuration\Application\" + ApplicationName);
     if (SourceFolder != null && File.Exists(Path.Combine(this.SourceFolder, configFile)))
     {
         File.Copy(Path.Combine(this.SourceFolder, configFile),
                   GetConfigurationFile(configFile), true);
     }
     if (configType != null)
     {
         ConfigurationManager            configManager = _workItem.Services.Get <ConfigurationManager>();
         ReflectionConfigurationTypeInfo typeInfo      = new ReflectionConfigurationTypeInfo(configType);
         typeInfo.ConfigurationSourceType = typeof(LocalFileConfigurationSource);
         configManager.RegisterConfigurationType(typeInfo);
     }
 }
Esempio n. 3
0
 /// <summary>
 /// Register configuration file.
 /// This copies the given file under the fixed path for the application so it can be retrieved, and registers it.
 /// If SourceFolder is not specified then the file will be expected to already be there, and the copy step will be skipped.
 /// </summary>
 /// <param name="configType">Type of configuration (eg HibernateConfiguration).  May be null if not applicable.</param>
 /// <param name="configFile">Absolute path to configuration file.  It will be copied under the local configuration directory.</param>        
 private void PrepareConfigurationFile(Type configType, string configFile)
 {
     Directory.CreateDirectory(@"Configuration\Application\" + ApplicationName);
     if (SourceFolder != null && File.Exists(Path.Combine(this.SourceFolder, configFile)))
     {
         File.Copy(Path.Combine(this.SourceFolder, configFile),
             GetConfigurationFile(configFile), true);
     }
     if (configType != null)
     {
         ConfigurationManager configManager = _workItem.Services.Get<ConfigurationManager>();
         ReflectionConfigurationTypeInfo typeInfo = new ReflectionConfigurationTypeInfo(configType);
         typeInfo.ConfigurationSourceType = typeof(LocalFileConfigurationSource);
         configManager.RegisterConfigurationType(typeInfo);
     }
 }