Это можно легко сделать с помощью этого запроса Linq:
Код: Выделить всё
var value = await context.Table
.Where(r => r.Id == recordId)
.Select(r => r.Field)
.SingleOrDefaultAsync();
Поэтому, когда поле имеет значение, мы получаем это значение. Но когда столбец имеет значение «null», вы также получаете «null».
И здесь возникает моя проблема: я хочу различать ситуации, когда значение столбца равно «null», и когда строка не существует (ошибка).
Вы можете попробовать это
Код: Выделить всё
try
{
var value = await context.Table
.Where(r => r.Id == recordId)
.Select(r => r.Field)
.SingleAsync();
}
catch
{
throw new NotFoundException("");
}
И во-вторых: таким образом мы не сможем отличить несуществующие строки от ситуации, когда у нас может быть несколько строк (при использовании разных предложенийwhere).
Подробнее здесь: https://stackoverflow.com/questions/798 ... abase-rows
Мобильная версия