using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SqlClient; using System.Configuration; namespace bnhtrade.Core.Data.Database { public class Connection { //protected readonly string SqlConnectionString; private Model.Credentials.bnhtradeDB dbCredentials; protected string SqlConnectionString { get { return dbCredentials.ConnectionString; } } public Connection() { var config = new Config().GetConfiguration(); // attempt to retrive credentials from app.local.config try { string dataSource = config.AppSettings.Settings["DbDataSource"].Value; string userId = config.AppSettings.Settings["DbUserId"].Value; string pass = config.AppSettings.Settings["DbUserPassword"].Value; // check if (string.IsNullOrEmpty(dataSource)) { throw new ArgumentException("Could not retrive 'DbDataSource' from config file"); } else if (string.IsNullOrEmpty(userId)) { throw new ArgumentException("Could not retrive 'DbUserId' from config file"); } else if (string.IsNullOrEmpty(pass)) { throw new ArgumentException("Could not retrive 'DbUserPassword' from config file"); } var dbCredentials = new bnhtrade.Core.Model.Credentials.bnhtradeDB(dataSource, userId, pass); this.dbCredentials = dbCredentials; } catch (Exception ex) { throw new Exception("Unable to retirve DB credentials: " + ex.Message); } } private void ConnectionOld() { // attempt to retrive credentials from app.local.config try { string dataSource = ConfigurationManager.AppSettings["DbDataSource"]; string userId = ConfigurationManager.AppSettings["DbUserId"]; string pass = ConfigurationManager.AppSettings["DbUserPassword"]; // check if (string.IsNullOrEmpty(dataSource)) { throw new ArgumentException("Could not retrive 'DbDataSource' from config file"); } else if (string.IsNullOrEmpty(userId)) { throw new ArgumentException("Could not retrive 'DbUserId' from config file"); } else if (string.IsNullOrEmpty(pass)) { throw new ArgumentException("Could not retrive 'DbUserPassword' from config file"); } var dbCredentials = new bnhtrade.Core.Model.Credentials.bnhtradeDB(dataSource, userId, pass); this.dbCredentials = dbCredentials; } catch(Exception ex) { throw new Exception("Unable to retirve DB credentials: " + ex.Message); } } public Connection(Model.Credentials.bnhtradeDB dbCredentials) { // setup sql parameters if (dbCredentials == null) { throw new Exception("DB credentials object is null"); } this.dbCredentials = dbCredentials; } } }