public Task <AsyncResult <string> > GetUserAdditionalDataAsync(Guid profileId, string key, int dataNo = 0) { ISQLDatabase database = ServiceRegistration.Get <ISQLDatabase>(); ITransaction transaction = database.BeginTransaction(); try { int dataIndex; using (IDbCommand command = UserProfileDataManagement_SubSchema.SelectUserAdditionalDataCommand(transaction, profileId, key, dataNo, out dataIndex)) { using (IDataReader reader = command.ExecuteReader()) { if (reader.Read()) { var data = database.ReadDBValue <string>(reader, dataIndex); return(Task.FromResult(new AsyncResult <string>(true, data))); } } } return(Task.FromResult(new AsyncResult <string>(false, null))); } finally { transaction.Dispose(); } }
public bool GetUserAdditionalData(Guid profileId, string key, out string data) { ISQLDatabase database = ServiceRegistration.Get <ISQLDatabase>(); ITransaction transaction = database.BeginTransaction(); try { int dataIndex; using (IDbCommand command = UserProfileDataManagement_SubSchema.SelectUserAdditionalDataCommand(transaction, profileId, key, out dataIndex)) { using (IDataReader reader = command.ExecuteReader()) { if (reader.Read()) { data = database.ReadDBValue <string>(reader, dataIndex); return(true); } } } data = null; return(false); } finally { transaction.Dispose(); } }