///////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////// private string GetLastUserNameFromOffileStore() { //if (MustAssertForSql) // (new PermissionSet(PermissionState.Unrestricted)).Assert(); if (_UsingFileSystemStore || _UsingIsolatedStore) { return(ClientDataManager.GetAppClientData(_UsingIsolatedStore).LastLoggedInUserName); } using (DbConnection conn = SqlHelper.GetConnection(null, _ConnectionString, _ConnectionStringProvider)) { DbTransaction trans = null; try { trans = conn.BeginTransaction(); DbCommand cmd = conn.CreateCommand(); cmd.Transaction = trans; cmd.CommandText = "SELECT PropertyValue FROM ApplicationProperties WHERE PropertyName = N'LastLoggedInUserName'"; object o = cmd.ExecuteScalar(); return((o != null) ? o.ToString() : null); } catch { if (trans != null) { trans.Rollback(); trans = null; } throw; } finally { if (trans != null) { trans.Commit(); } } } }
///////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////// private void StoreLastUserNameInOffileStore(string username) { if (_UsingFileSystemStore || _UsingIsolatedStore) { ClientData cd = ClientDataManager.GetAppClientData(_UsingIsolatedStore); cd.LastLoggedInUserName = username; cd.LastLoggedInDateUtc = DateTime.UtcNow; cd.Save(); return; } //if (MustAssertForSql) // (new PermissionSet(PermissionState.Unrestricted)).Assert(); using (DbConnection conn = SqlHelper.GetConnection(null, _ConnectionString, _ConnectionStringProvider)) { DbTransaction trans = null; try { trans = conn.BeginTransaction(); DbCommand cmd = conn.CreateCommand(); cmd.Transaction = trans; cmd.CommandText = "DELETE FROM ApplicationProperties WHERE PropertyName = N'LastLoggedInUserName'"; cmd.ExecuteNonQuery(); if (!string.IsNullOrEmpty(username)) { cmd = conn.CreateCommand(); cmd.Transaction = trans; cmd.CommandText = "INSERT INTO ApplicationProperties(PropertyName, PropertyValue) VALUES (N'LastLoggedInUserName', @UserName)"; SqlHelper.AddParameter(conn, cmd, "@UserName", username); cmd.ExecuteNonQuery(); cmd = conn.CreateCommand(); cmd.Transaction = trans; cmd.CommandText = "INSERT INTO ApplicationProperties(PropertyName, PropertyValue) VALUES (N'LastLoggedInDate', @Date)"; SqlHelper.AddParameter(conn, cmd, "@Date", DateTime.Now.ToFileTimeUtc().ToString(CultureInfo.InvariantCulture)); cmd.Transaction = trans; cmd.ExecuteNonQuery(); } } catch { if (trans != null) { trans.Rollback(); trans = null; } throw; } finally { if (trans != null) { trans.Commit(); } } } }