Параллелизм данных Linq в SQL - безопасно ли использовать только ПК?

Я получаю сообщение об ошибке на моем веб-сайте на основе MVC, касающемся параллелизма данных в Linq to SQL:

«Строка не найдена или не изменена»

После прочтения несколько сообщений здесь кажется, что принято решение установить для всех полей непервичного ключа значение UpdateCheck = false в дизайнере dbml. Прежде чем сделать решительный шаг, я хотел спросить, потеряю ли я что-нибудь, если сделаю это?

Честно говоря, мне кажется, что так должно быть всегда, поскольку использование первичного ключа в любом случае должно быть самым быстрым способом найти запись. Предполагается, что у вас нет составных ПК. Я не очень хорошо знаком со сценариями параллелизма данных, но я что-то упускаю?

Спасибо за ваше время!

[EDIT]

Спасибо за отзывы, ребята! Чтобы дать более подробную информацию, конкретный сценарий, который у меня есть, таков:

У меня есть таблица статей с рядом полей (заголовок, содержание, автор и т. Д.). Одно из полей, которое очень часто обновляется (каждый раз, когда кто-либо просматривает статью), - это поле популярности, которое увеличивается с каждым щелчком. Я увидел исходную ошибку, упомянутую выше, когда обновил текст статьи в базе данных. Затем перешел к этой статье на действующем сайте (который пытался обновить поле популярности).

Для начала это звучит так, как будто мне НЕ нужно использовать общий DataContext. Помимо этого, возможно, стоит подумать о том, чтобы в некоторых полях никогда не устанавливать UpdateCheck. При этом я определенно не хочу, чтобы популярность статьи не обновлялась из-за некоторой проблемы параллелизма. Итак, в этом случае есть ли способ обеспечить это с помощью оптимистичного параллелизма?

Еще раз спасибо !!

1
задан Josh Garwood 8 October 2010 в 22:08
поделиться