Несоответствие в обновлении LinqToSql - PullRequest
1 голос
/ 06 октября 2009

Я использую следующий код:

if(ven.Source == null)ven.Source = new Source();
                    ven.name = (string) venue.Element("venueName"); 
                    Console.WriteLine("Venue Name: " + ven.name);
                    ven.Source.companyId = 1;
                    ven.Source.sourceReference = (string)venue.Attribute("venueID");

Я выполняю один и тот же xml-файл каждый раз, и (string)venue.Attribute("venueID"); точно одинаков каждый раз, так почему же обновление базы данных запускается при сохранении изменений? Почему идентификатор компании не установлен, а ссылка на источник -? :

exec sp_executesql N'UPDATE [dbo].[Source]
SET [sourceReference] = @p3
WHERE ([sourceId] = @p0) AND ([companyId] = @p1) AND ([sourceReference] = @p2)',N'@p0 int,@p1 int,@p2 nchar(12),@p3 nchar(12)',@p0=71,@p1=1,@p2=N'x1830wa     ',@p3=N'x1830wa     '

1 Ответ

1 голос
/ 06 октября 2009

Несколько мыслей:

  • имеет ли оно на самом деле измененное значение - оно очень ленивое и сохраняет только ощутимые изменения; вызова set недостаточно
  • это часть первичного ключа / идентификатора? (хотя WHERE заставляет меня думать не так)
  • это в базе данных? или вы добавили его вручную и забыли?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...