Что означает StoreGeneratedPattern?

Ваш первый набор соответствует стандарту C ++ и не связан с некоторой оптимизацией.

Раздел 12.8 ([class.copy]) стандарта C ++ дает аналогичный пример:

class X {
    // ...
public:
    X(int);
    X(const X&, int = 1);
};

X a(1);     // calls X(int);
X b(a, 0);  // calls X(const X&, int);
X c = b;    // calls X(const X&, int);

Последняя строка будет соответствовать вашему случаю.

16
задан Akram Shahda 19 June 2011 в 10:18
поделиться

2 ответа

Эти ответы также не являются простым прямым ответом и просто указывают или повторяют ту же тайную документацию, на которую ссылается ОП.

Этот атрибут используется, когда столбец вычисляется базой данных. Поэтому при вставках и обновлениях значение не будет записываться.

Значение будет считано из базы данных после вставок и обновлений, хотя я предполагаю, что если установлено значение Identity, EF может не прочитать значение после обновления, так как оно не изменилось. Действительно ли это делает эту крошечную оптимизацию, я не знаю.

Примером может быть столбец идентификаторов или последняя обновленная отметка времени.

8
ответ дан Luke Puplett 19 June 2011 в 10:18
поделиться

Если вы посмотрите на то же самое, что называется перечисление , оно скажет, что нужно делать, если вы вставляете или обновляете строки:

  • Нет: автоматически сгенерированное значение не генерируется
  • Удостоверение: новое значение создается при вставке, но не изменяется при обновлении
  • Вычисляется: новое значение создается при вставке и обновлении
18
ответ дан 19 June 2011 в 10:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: