Я звоню в одну и ту же базу данных из различных приложений , используя Entity Framework.Однако, когда одно приложение читает / обновляет запись, я не хочу, чтобы другие приложения считывали эти данные.
Я пробовал использовать следующий пример кода;однако они по-прежнему могут читать записи.
Любые предложения ИЛИ другие подходы будут высоко оценены!
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);
}
Отредактировано: в основном я читаю запись и что-то делаюзаймет много времени).Затем обновите запись с флагом успеха / сбоя (если сбой другой может сделать это снова).Я не хочу, чтобы другие приложения выполняли задачу успешно несколько раз.