public static int Profile_DeleteProfiles(DbConnection connection, string applicationName, string [] userNames)
{
int deletedUsers = 0;
string appId = DerbyApplicationsHelper.GetApplicationId (connection, applicationName);
if (appId == null)
return 0;
OleDbTransaction trans = (OleDbTransaction) connection.BeginTransaction ();
try {
foreach (string username in userNames) {
string userId = GetUserId (connection, trans, appId, username);
if (userId == null)
continue;
string queryDelete = "DELETE FROM aspnet_Profile WHERE UserId = ?";
OleDbCommand cmdDelete = new OleDbCommand (queryDelete, (OleDbConnection) connection);
cmdDelete.Transaction = trans;
AddParameter (cmdDelete, "UserId", userId);
cmdDelete.Transaction = trans;
deletedUsers += cmdDelete.ExecuteNonQuery ();
}
trans.Commit ();
return deletedUsers;
}
catch (Exception e) {
trans.Rollback ();
throw e;
}
}