public static void AddUpdateServerDetails(Aspose_ExchangeSync_ServerDetails details) { try { Aspose_ExchangeSync_ServerDetails serverDetails = CurrentDBEntities.Aspose_ExchangeSync_ServerDetails.FirstOrDefault(x => x.UserID == details.UserID); if (serverDetails != null) { serverDetails.Username = details.Username; serverDetails.Password = details.Password; serverDetails.ServerURL = details.ServerURL; serverDetails.Domain = details.Domain; CurrentDBEntities.SaveChanges(); } else { CurrentDBEntities.Aspose_ExchangeSync_ServerDetails.Add(details); CurrentDBEntities.SaveChanges(); } } catch (Exception) { // Fall back to session approach if database fails details.Password = Crypto.Decrypt(details.Password); HttpContext.Current.Session[ExchangeDetailsSessionName((int)details.UserID)] = details; } }
public static Aspose_ExchangeSync_ServerDetails CheckExchangeDetails(int userID) { Aspose_ExchangeSync_ServerDetails detailsToReturn = null; try { Aspose_ExchangeSync_ServerDetails serverDetails = CurrentDBEntities.Aspose_ExchangeSync_ServerDetails.FirstOrDefault(x => x.UserID == userID); if (serverDetails != null) { detailsToReturn = new Aspose_ExchangeSync_ServerDetails(); detailsToReturn.Username = serverDetails.Username; detailsToReturn.Password = Crypto.Decrypt(serverDetails.Password); detailsToReturn.ServerURL = serverDetails.ServerURL; detailsToReturn.Domain = serverDetails.Domain; } } catch (Exception) { // Fall back to session approach if database fails if (HttpContext.Current.Session[ExchangeDetailsSessionName(userID)] != null) { detailsToReturn = (Aspose_ExchangeSync_ServerDetails)HttpContext.Current.Session[ExchangeDetailsSessionName(userID)]; } } return detailsToReturn; }
protected void SaveButton_Click(object sender, EventArgs e) { ExchangeCredsErrorDiv.Visible = false; Aspose_ExchangeSync_ServerDetails serverDetails = new Aspose_ExchangeSync_ServerDetails(); serverDetails.ServerURL = ServerURLTextBox.Text.Trim(); serverDetails.Username = UsernameTextBox.Text.Trim(); serverDetails.Password = PasswordTextBox.Text.Trim(); serverDetails.Domain = DomainTextBox.Text.Trim(); serverDetails.UserID = UserId; try { NetworkCredential credentials = new NetworkCredential(serverDetails.Username, serverDetails.Password, serverDetails.Domain); IEWSClient client = EWSClient.GetEWSClient(serverDetails.ServerURL, credentials); } catch (Exception) { ExchangeCredsErrorDiv.Visible = true; return; } serverDetails.Password = Crypto.Encrypt(serverDetails.Password); DatabaseHelper.AddUpdateServerDetails(serverDetails); ResetControls(); if (ExchangeToDnnClickedHiddenField.Value.Equals("true")) { ExchangeToDnnSync.Visible = true; ExchangeToDnnClickedHiddenField.Value = "false"; } else if (DnnToExchangeClickedHiddenField.Value.Equals("true")) { DnnToExchangeSync.Visible = true; DnnToExchangeClickedHiddenField.Value = "false"; } }