示例#1
0
        public ConnectionStringsSection GetSiteConnectionStrings(string siteName, bool isSite)
        {
            Application rootApplication = null;

            if (isSite)
            {
                var site             = _sitesManager.GetSiteByName(siteName);
                var siteApplications = site.Applications;
                rootApplication = siteApplications.SingleOrDefault(x => x.Path == "/");
            }
            else
            {
                rootApplication = _sitesManager.GetApplicationByPath(siteName);
            }

            var connectionStringFileUrl = "";
            var dictionary = rootApplication.VirtualDirectories.FirstOrDefault();

            connectionStringFileUrl += $@"{dictionary.PhysicalPath}\{_appConfigFineName}";

            var map = new ExeConfigurationFileMap {
                ExeConfigFilename = connectionStringFileUrl
            };
            var configFile = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None);

            return(configFile.ConnectionStrings);
        }
示例#2
0
        /// <summary>
        /// Get path to configuration file
        /// </summary>
        /// <param name="siteName"></param>
        /// <param name="isSite"></param>
        /// <returns></returns>
        public string GetConfigurationFilePath(string siteName, bool isSite)
        {
            Application rootApplication;

            if (isSite)
            {
                var site             = _sitesManager.GetSiteByName(siteName);
                var siteApplications = site.Applications;
                rootApplication = siteApplications.SingleOrDefault(x => x.Path == "/");
            }
            else
            {
                rootApplication = _sitesManager.GetApplicationByPath(siteName);
            }

            var dictionary = rootApplication?.VirtualDirectories.FirstOrDefault();

            return($@"{dictionary?.PhysicalPath}\{_appConfigFileName}");
        }