Перечисление RefreshMode
Указывает реакцию элемента списка, изменение системы LINQ поставщика SharePoint при нахождении, что после извлечения элемента списка были ли изменены другим процессом.
Пространство имен: Microsoft.SharePoint.Linq
Сборка: Microsoft.SharePoint.Linq (в Microsoft.SharePoint.Linq.dll)
Синтаксис
'Декларация
Public Enumeration RefreshMode
'Применение
Dim instance As RefreshMode
public enum RefreshMode
Элементы
Имя элемента | Описание | |
---|---|---|
KeepChanges | Объединение значений базы данных (то есть, принять изменения каждый пользователь с ущерба для текущего пользователя). Это означает: при применении к объекту MemberChangeConflict: сохранить текущее значение клиента, если он был изменен с момента изначально получены; в противном случае — сделать его совпадает с текущим значением базы данных. При применении к объекту ObjectChangeConflict: сохранение нового значения для поля, которые текущей версии был изменен с момента исходного извлечения даже в том случае, если они конфликтуют с последней версией в базе данных; но следует изменить все поля, при необходимости в соответствии с последней версией в базе данных. |
|
KeepCurrentValues | Перезаписи значений базы данных (то есть, перезапись всех других изменений, внесенных пользователями). Это означает: при применении к объекту MemberChangeConflict: оставьте текущее значение клиента. (Таким образом, если он был изменен с момента изначально полученные keep новое значение; в противном случае оставьте его исходное значение.) При применении к объекту ObjectChangeConflict: сохранение нового значения для поля, которые текущей версии был изменен с момента исходного извлечения даже в том случае, если они конфликтуют с последней версией в базе данных; но все поля должны оставаться, как при изначально получены даже в том случае, если эти значения больше не совпадает с последней версией в базе данных. |
|
OverwriteCurrentValues | Сохранения значений базы данных (то есть, присвойте абсолютный ущерба для версии базы данных). Это означает: при применении к объекту MemberChangeConflict: совпадает с текущим значением базы данных. При применении к объекту ObjectChangeConflict: внести все значения соответствуют последней версии в базе данных. |
Замечания
Значение этого перечисления передается как параметр методам ObjectChangeConflict.Resolve(RefreshMode) или MemberChangeConflict.Resolve(RefreshMode) . Эти методы обычно вызывается в блоке catch , перехватывает ChangeConflictException. Исключение будет создано с помощью метода SubmitChanges() , если обнаруживает, что изменяемого элемента списка уже был изменен с момента его первоначально был возвращен запрос LINQ.
Перечисление сообщает о том, методы ObjectChangeConflict.Resolve(RefreshMode) и MemberChangeConflict.Resolve(RefreshMode) как реагировать на различия между тремя версий элемента списка:
Версия изначально извлекается из базы данных контента.
Версия теперь в базе данных.
Версии в текущий процесс (иногда называемую версии клиента, несмотря на то, что «клиент» ссылается на интерфейсном веб-сервере), которое было отправлено при вызове SubmitChanges().
Примечание
Невозможно для отмены всех изменений, даже если они текущего пользователя; Однако это можно сделать путем вызова Resolve(Object) и передачи OriginalValue в качестве параметра. Чтобы применить это правило ObjectChangeConflict, итерации по его свойство MemberConflicts вызов Resolve(Object) для каждого элемента.
В следующей таблице перечислены разделы, которые являются о перечислении System.Data.Linq.RefreshMode LINQ для поставщика SQL. Тем не менее описываемых применяют перечисление Microsoft.SharePoint.Linq.RefreshMode LINQ to SharePoint так.
Как: разрешение конфликтов параллельного доступа с помощью объединения со значениями базы данных (LINQ to SQL) |
Как: разрешение конфликтов параллельного доступа с помощью сохранения значений базы данных (LINQ to SQL) |
Как: разрешение конфликтов параллельного доступа с помощью перезаписи значений базы данных (LINQ to SQL) |