示例#1
0
        public ScarfDataSource CreateDataSourceInstance()
        {
            ScarfSection configuration = ScarfConfiguration.ConfigurationSection;

            if (configuration.DataSource == null)
            {
                return(new MemoryDataSource());
            }

            try
            {
                DataSourceElement dataAccessConfiguration = configuration.DataSource;
                if (string.IsNullOrWhiteSpace(dataAccessConfiguration.Type))
                {
                    return(new MemoryDataSource());
                }

                Type dataSourceType = Type.GetType(dataAccessConfiguration.Type);
                if (dataSourceType == null)
                {
                    return(new MemoryDataSource());
                }

                var dataSource = (ScarfDataSource)Activator.CreateInstance(dataSourceType);
                dataSource.Initialize(dataAccessConfiguration);
                return(dataSource);
            }
            catch
            {
                return(new MemoryDataSource());
            }
        }
示例#2
0
        static void Main(string[] args)
        {
            ScarfSection scarfSection = ConfigurationManager.GetSection("scarf") as ScarfSection;

            try
            {
                MyAssert(scarfSection != null);
                MyAssert(scarfSection.DataSource != null);
                MyAssert(scarfSection.DataSource.ConnectionStringName != null);
                MyAssert(scarfSection.DataSource.ConnectionStringName == "myConnection");
                MyAssert(scarfSection.DataSource.Type != null);
                MyAssert(scarfSection.DataSource.Type == "log3a.DataSource.SQLServer.SQLServerDataAccess, log3a.SQLServer");

                Console.WriteLine("OK!");
            }
            catch
            {
                Console.WriteLine("NOT OK!!");
            }
        }
示例#3
0
        private string FindApplication()
        {
            ScarfSection configuration = ScarfConfiguration.ConfigurationSection;

            if (string.IsNullOrWhiteSpace(configuration.ApplicationName) == false)
            {
                return(configuration.ApplicationName);
            }

            string appName = null;

            if (_httpContext.Request != null)
            {
                appName = _httpContext.Request.ServerVariables["APPL_MD_PATH"];
            }

            if (string.IsNullOrEmpty(appName))
            {
                appName = HttpRuntime.AppDomainAppVirtualPath;
            }

            return(string.IsNullOrEmpty(appName) ? "/" : appName);
        }