public void Update(CurrentSessionDto dto) { using (SqlConnection sqlConnection = new SqlConnection(connectionString)) { sqlConnection.Open(); using (SqlDataAdapter adapter = new SqlDataAdapter(sql, connectionString)) { DataSet dataSet = new DataSet(); adapter.Fill(dataSet); DataColumn[] key = new DataColumn[1]; key[0] = dataSet.Tables[0].Columns[0]; dataSet.Tables[0].PrimaryKey = key; DataRow dataRow = dataSet.Tables[0].Rows.Find(dto.Id); dataRow.BeginEdit(); dataRow["UserId"] = dto.UserId; dataRow.EndEdit(); SqlCommandBuilder sqlCommandBuilder = new SqlCommandBuilder(adapter); adapter.Update(dataSet); } sqlConnection.Close(); } }
public void Create(CurrentSessionDto dto) { using (SqlConnection sqlConnection = new SqlConnection(connectionString)) { sqlConnection.Open(); using (SqlDataAdapter adapter = new SqlDataAdapter(sql, connectionString)) { DataSet dataSet = new DataSet(); adapter.Fill(dataSet, "CurrentSessions"); DataRow dataRowToAdd = dataSet.Tables["CurrentSessions"].NewRow(); foreach (var item in dto.GetType().GetProperties()) { dataRowToAdd[item.Name] = item.GetValue(dto, null); } dataSet.Tables["CurrentSessions"].Rows.Add(dataRowToAdd); SqlCommandBuilder sqlCommandBuilder = new SqlCommandBuilder(adapter); adapter.Update(dataSet.Tables["CurrentSessions"]); } sqlConnection.Close(); } }
public bool SignInToApplication(string email, string password) { string userId = ""; CurrentSessionDto sessionToWorkWith = null; List <BankClientDto> allUsers = _bankClientDao.Read() .ToList(); List <CurrentSessionDto> allSessions = _currentSessionsDao.Read() .ToList(); foreach (var item in allUsers) { if (item.Email == email && PasswordHashGenerator.GetMd5Hash(password) == item.PasswordHash) { userId = item.Id; break; } } foreach (var item in allSessions) { if (item.UserId == userId) { sessionToWorkWith = item; break; } } if (sessionToWorkWith == null) { _currentSessionsDao.Create(new CurrentSessionDto() { LastOperationTime = DateTime.Now, UserId = userId, Id = Guid.NewGuid().ToString() }); return(true); } if ((DateTime.Now - sessionToWorkWith.LastOperationTime).TotalMinutes > 60D) { _currentSessionsDao.Remove(sessionToWorkWith.Id); _currentSessionsDao.Create(new CurrentSessionDto() { LastOperationTime = DateTime.Now, UserId = userId, Id = Guid.NewGuid().ToString() }); return(true); } return(false); }
public void CurrentSessionDao_Create() { CurrentSessionDto dto = new CurrentSessionDto() { UserId = "1111", LastOperationTime = DateTime.Now, SignInTime = DateTime.Now, EntityStatus = EntityStatusType.IsActive, CreatedTime = DateTime.Now }; CurrentSessionDao dao = new CurrentSessionDao(); dao.Create(dto); }
public void CurrentSessionDao_Update() { CurrentSessionDto dto = new CurrentSessionDto(); dto.UserId = "002"; dto.LastOperationTime = DateTime.Now; dto.SignInTime = DateTime.Now; dto.EntityStatus = EntityStatusType.IsActive; dto.CreatedTime = DateTime.Now; CurrentSessionDao dao = new CurrentSessionDao(); string result = dao.Update(dto); Assert.IsTrue(dto.Id == result); }
public void CurrentSessionDao_Delete() { CurrentSessionDto dto = new CurrentSessionDto() { Id = Guid.NewGuid().ToString(), UserId = "1111", LastOperationTime = DateTime.Now, SignInTime = DateTime.Now, EntityStatus = EntityStatusType.IsActive, CreatedTime = DateTime.Now, }; CurrentSessionDao dao = new CurrentSessionDao(); dao.Create(dto); dao.Remove(dto.Id); Assert.IsNull(dao.Read(dto.Id)); }
public CurrentSessionDto Read(string id) { CurrentSessionDto dtoToReturn = null; using (SqlConnection sqlConnection = new SqlConnection(connectionString)) { sqlConnection.Open(); using (SqlDataAdapter adapter = new SqlDataAdapter(sql, connectionString)) { DataSet dataSet = new DataSet(); adapter.Fill(dataSet, "CurrentSessions"); dataSet.Tables["CurrentSessions"].PrimaryKey = new DataColumn[] { dataSet.Tables["CurrentSessions"].Columns["Id"] }; DataRow dataRowToReturn = dataSet.Tables["CurrentSessions"].Rows.Find(id); foreach (var item in dataRowToReturn.ItemArray.ToList()) { Console.WriteLine(item); } } sqlConnection.Close(); } return(null); }