Vou dar uma dica!
context = new DomainService1();
pessoas pessoaRemover = context.pessoas.FirstOrDefault(x => x.id_pessoa == registo)
if (pessoaRemover != null){
context.pessoas.Remove(pessoaRemover);
context.SubmitChanges(submitOperation =>
{
if (submitOperation.HasError)
{
MessageBox.Show(submitOperation.Error.Message);
}
else
{
MessageBox.Show("removido");
}
}, null);
} else {
// pessoa não foi encontrada
}
Porque possa ser que ta vindo valor no registro que já não existe!
Eu até entendi que isso funcione em algum momento, mas, por segurança eu verifico se veio alguma coisa do banco!!!
Coloque um break point nessa rotina e vê se ta passando certo os valores!!!
Fúlvio Cezar Canducci Dias