/// <summary>
        /// Gets sql connection
        /// </summary>
        /// <param name="iLog">ILog object reference to be used for logging</param>
        /// <returns></returns>
        public static string _fx_GetConnectionString(LoggingFramework.ILog iLog)
        {
            string ConnectionString = string.Empty;

            try
            {
                IConfigurationBuilder builder = new ConfigurationBuilder();
                builder.AddJsonFile(Path.Combine(Directory.GetCurrentDirectory(), "appsettings.json"));

                var root       = builder.Build();
                var connString = root.GetConnectionString("WaliedCheetos-HERE_DB");

                ConnectionString = EncryptDecrypt._fx_Decrypt(
                    connString,
                    EncryptDecrypt._enum_EncryptionDecryptionSecret.SECRET1,
                    iLog,
                    string.Empty);

                iLog.WriteDebug("Connection String: {0}", ConnectionString);
            }
            catch (Exception exception)
            {
                iLog.WriteError(exception.ToString());
            }
            finally
            { }
            return(ConnectionString);
        }
예제 #2
0
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;


            //create global logger.
            //string LogFilePath = ConfigurationManager.AppSettings["LogPath"] + "\\WebServiceAPILog.txt";
            string LogFilePath    = Path.Join(Configuration["LogPath"], "WebServiceAPILog.txt");
            bool   useBufferedLog = false;
            bool   enableDebugLog = false;

            try
            {
                //useBufferedLog = Convert.ToBoolean(ConfigurationManager.AppSettings["UseBufferedLog"].ToString());
                useBufferedLog = Convert.ToBoolean(Configuration["UseBufferedLog"].ToString());
            }
            catch (Exception exception)
            {
                useBufferedLog = false;
            }

            try
            {
                //EnableLog = Convert.ToBoolean(ConfigurationManager.AppSettings["EnableLog"].ToString());
                enableDebugLog = Convert.ToBoolean(Configuration["EnableDebugLog"].ToString());
            }
            catch (Exception exception)
            {
                enableDebugLog = false;
            }


            if (useBufferedLog)
            {
                _iLog = new LoggingFramework.BufferedFileLog(LogFilePath, true, enableDebugLog);
            }
            else
            {
                _iLog = new LoggingFramework.FileLog(LogFilePath, true, enableDebugLog);
            }
            _iLog.WriteTrace("Webservice API global logger created on Application Start.");
        }
        //private static string _connectionString =
        //private static string _connectionString = ConnectionString();

        /// <summary>
        /// Gets sql connection for any CRUD operation that could happen
        /// </summary>
        /// <param name="iLog">ILog object reference to be used for logging</param>
        /// <returns></returns>
        public static SqlConnection _fx_GetSqlConnection(LoggingFramework.ILog iLog, string UserTag)
        {
            SqlConnection sqlConnection = null;

            try
            {
                sqlConnection = new SqlConnection(_fx_GetConnectionString(iLog));
                if (sqlConnection.State != System.Data.ConnectionState.Open)
                {
                    sqlConnection.Open();
                }

                iLog.WriteDebug("Database connection with connection String: {0} has been opened", sqlConnection.ConnectionString);
            }
            catch (Exception exception)
            {
                iLog.WriteError(exception.ToString());
            }
            finally
            { }
            return(sqlConnection);
        }
        public static string _fx_Decrypt(string EncryptedString, _enum_EncryptionDecryptionSecret EncryptionDecryptionSecret, LoggingFramework.ILog iLog, string UserTag)
        {
            string DecryptedString = string.Empty;

            try
            {
                iLog.WriteDebug("Decryption - Encrypted String {0}", EncryptedString);

                switch (EncryptionDecryptionSecret)
                {
                case _enum_EncryptionDecryptionSecret.SECRET1:
                case _enum_EncryptionDecryptionSecret.SECRET2:
                case _enum_EncryptionDecryptionSecret.SECRET3:
                default:
                    DecryptedString = EncryptedString;
                    break;
                }
            }
            catch (Exception exception)
            {
                iLog.WriteError(exception.ToString());
            }
            finally
            { }

            return(DecryptedString);
        }
        public static string _fx_GetToSpeedDataByLinkIds(BusinessEntities.Entities.HERE_TrafficAnalyticsRequests.ToSpeedDataByLinkIds toSpeedDataByLinkIds, LoggingFramework.ILog iLog, string Usertag)
        {
            string Result = string.Empty;

            try
            {
                Result = DataAccess.Operations.HERE_TrafficAnalytics._fx_GetToSpeedDataByLinkIds(toSpeedDataByLinkIds, iLog, Usertag);
            }
            catch (Exception exception)
            {
                iLog.WriteError(exception.ToString());
            }
            finally
            { }
            return(Result);
        }
        public static string _fx_GetCongestionFactorByLinkIds(BusinessEntities.Entities.HERE_TrafficAnalyticsRequests.CongestionFactorByLinkIds congestionFactorByLinkIds, LoggingFramework.ILog iLog, string Usertag)
        {
            string Result = string.Empty;

            try
            {
                using (SqlConnection sqlConnection = DataAccess.Admin.DataAccessManager._fx_GetSqlConnection(iLog, string.Empty))
                {
                    SqlDataAdapter sqlDataAdapter = new SqlDataAdapter("_spt_GetCongestionFactorByLinkIds", sqlConnection);
                    sqlDataAdapter.SelectCommand.CommandType = System.Data.CommandType.StoredProcedure;

                    sqlDataAdapter.SelectCommand.Parameters.AddWithValue("@_param_LinkIds", congestionFactorByLinkIds.LinkIds);
                    sqlDataAdapter.SelectCommand.Parameters.AddWithValue("@_param_TimePattern", congestionFactorByLinkIds.TimePattern);
                    sqlDataAdapter.SelectCommand.Parameters.AddWithValue("@_param_Direction", congestionFactorByLinkIds.Direction);

                    using (DataTable dataTable = new DataTable())
                    {
                        sqlDataAdapter.Fill(dataTable);
                        if (dataTable.Rows.Count > 0)
                        {
                            Result = Newtonsoft.Json.JsonConvert.SerializeObject(dataTable);
                        }
                    }
                }
            }
            catch (Exception exception)
            {
                Result = exception.ToString();
                iLog.WriteError(exception.ToString());
            }
            finally
            { }
            return(Result);
        }