С помощью каких средств вы обычно работаете с базой? В частности добавляете или удаляете из нее записи?
Я например, делаю так
Добавление
public void AddUser(string nickName, string password, string PrimaryMail, string userPhoto = null)
{
if (!IsDuplicateNickname(nickName))
{
var newUser = new User();
newUser.NickName = nickName;
newUser.Password = password;
newUser.PrimaryMail = PrimaryMail;
newUser.UserPhoto = userPhoto;
using (var session = ConfigureRepository.SessionFactory.OpenSession())
{
using (var transaction = session.BeginTransaction())
{
try
{
session.Save(newUser);
transaction.Commit();
}
catch (HibernateException)
{
transaction.Rollback();
}
users.Add(newUser);
}
}
}
else throw new DuplicateValueException();
}
А удаляю так:
public void DeleteUser(string userNickname)
{
using (var session = ConfigureRepository.SessionFactory.OpenSession())
{
using (var transaction = session.BeginTransaction())
{
var user = findUserByName(userNickname);
session.Delete(user);
users.Remove(user);
transaction.Commit();
}
}
}
Кошерно ли это? Нет ли каких ошибок или недочетов?