Entity Framework - Bloqueio de leitura no registro
Estou chamando o mesmo banco de dados dediferentes aplicações usando o Entity Framework. No entanto, quando um aplicativo está lendo / atualizando um registro, não quero que outros aplicativos leiam esses dado
Tentei com o seguinte código de exemplo; no entanto, eles ainda conseguem ler o registro.
Qualquer sugestão OU abordagens diferentes serão muito apreciadas!
using (Entities context = new Entities(ConnectionString))
{
DBTable entity;
do
{
entity = context.DBTable
.Where(item => item.IsLock == false)
.FirstOrDefault();
if (entity != null)
{
// Map entity to class
......
// Lock the record; it will be unlocked later by a calling method.
entity.IsLock = true;
context.SaveChanges();
count++;
}
} while (entity != null && count < 100);
}
Editado: Basicamente, leio um registro e faço alguma coisa (às vezes leva muito tempo). Atualize o registro com o sinalizador de êxito / falha (se a falha de outro puder fazer isso novamente). Eu não quero que outros aplicativos façam obem sucedid tarefa várias vezes.