Is _certRequestRepository
an object of type ISession
?
If so, you will have to call _certRequestRepository.Flush()
to commit the delete to the database.
Better yet, use a Transaction.
using(var transaction = _certRequestRepository.BeginTransaction())
{
certRequest.Oids.Clear();
certRequestRepository.Delete(certRequest);
transaction.Commit();
}