Запрос на обновление Linq в одной строке?

#c# #wpf #linq

#c# #wpf #linq

Вопрос:

Я пытаюсь выполнить простое UPDATE для столбца в одной строке. Я получаю Sequence contains no elements исключение.

 private void InsertUpdateFileLocation(string targetFileLocationAndFullName, 
    tbFileAttachment linkGuid)
{
    ISESEntities context = new ISESEntities();

    var query = (from f in context.tbFileAttachments
                 where f.CCCPGUID == linkGuid.CCCPGUID
                 select f).First();

    query.FileLocation = targetFileLocationAndFullName;

    context.SaveChanges();
}
  

Комментарии:

1. У вас нет записи, соответствующей этому условию f.CCCPGUID == linkGuid.CCCPGUID

Ответ №1:

В этом случае у вас нет записей, соответствующих тому значению, которое вы ищете. Вы можете перехватить это, используя FirstOrDefault затем тестирование на null:

 var query = (from f in context.tbFileAttachments
             where f.CCCPGUID == linkGuid.CCCPGUID
             select f).FirstOrDefault();

if(query==null) 
{
    //no match found!
}