private OAuthUser CreateOAuthUser(OAuthUser user, DbTransactionManager tran) { using (var db = new DataAccess(tran)) { db.CreateStoredProcCommand("dbo.CreateOAuthUser"); db.AddInputParameter("@UserId", DbType.String, user.UserId); db.AddInputParameter("@Email", DbType.String, user.Email); db.AddInputParameter("@ProviderId", DbType.String, user.ProviderId); db.AddInputParameter("@ProviderName", DbType.String, user.ProviderName); db.AddInputParameter("@ProviderData", DbType.Xml, user.ProviderData.ToDbXml()); db.AddOutputParameter("@OAuthUserId", DbType.Int32); try { db.ExecuteNonQuery(); user.OAuthUserId = db.GetParameterValue<int>("@OAuthUserId"); } catch (Exception ex) { Logger.Error("Error while creating OAuth user", ex); throw; } } return user; }
public User() { Profile = new UserProfile(); OAuth = new OAuthUser(); Roles = new List<Role>(); }
public OAuthUser CreateOAuthUser(OAuthUser user) { using (var tran = new DbTransactionManager()) { try { tran.BeginTransaction(); user = CreateOAuthUser(user, tran); tran.Commit(); } catch (Exception ex) { tran.Rollback(); Logger.Error("Error while creating OAuth user.", ex); throw; } } return user; }