MemberChangeConflict.Resolve - Méthode (Object)
Résout l'écart en valeur client (c'est-à-dire, la valeur du processus en cours sur le serveur Web frontal) du champ (ou propriété) à l'objet spécifié.
Espace de noms : Microsoft.SharePoint.Linq
Assembly : Microsoft.SharePoint.Linq (dans Microsoft.SharePoint.Linq.dll)
Syntaxe
'Déclaration
Public Sub Resolve ( _
value As Object _
)
'Utilisation
Dim instance As MemberChangeConflict
Dim value As Object
instance.Resolve(value)
public void Resolve(
Object value
)
Paramètres
value
Type : System.ObjectLa valeur à laquelle le champ (ou propriété) doit être définie.
Remarques
En général, si vous souhaitez que la valeur du client pour être CurrentValue, OriginalValueou DatabaseValue, vous appelez l'autre surcharge de Resolve(RefreshMode) et lui passer une valeur appropriée RefreshMode . Cette surcharge est utile pour définir la valeur de client vers un quatrième objet.
La modification apportée par cette méthode n'est pas conservée dans la base de données jusqu'à ce que SubmitChanges est appelée à nouveau.
Exemples
Le code suivant montre comment Resolve(Object) peut être utilisée pour assigner une valeur à un champ qui indique qu'il est en litige. Cette affectation est effectuée uniquement si l'objet MemberChangeConflict représente un conflit d'accès concurrentiel réel ; Autrement dit, un autre utilisateur a modifié le champ dans la mesure où ce processus client récupérées dernier à partir de la base de données de contenu.
catch (ChangeConflictException e)
{
foreach (ObjectChangeConflict changedListItem in teamSite.ChangeConflicts)
{
foreach (MemberChangeConflict changedField in changedListItem.MemberConflicts)
{
if (changedField.Member.OriginalValue != changedField.Member.OriginalValue)
{
changedField.Resolve(((Object)”Disputed”));
}
else
{
changedField.Resolve(RefreshMode.KeepCurrentValues);
}
}
}
}
// Remainder of catch block omitted.
}
Catch e As ChangeConflictException
For Each changedListItem As ObjectChangeConflict In teamSite.ChangeConflicts
For Each changedField As MemberChangeConflict In changedListItem.MemberConflicts
If changedField.Member.OriginalValue IsNot changedField.Member.OriginalValue Then
changedField.Resolve((CType("Disputed", Object)))
Else
changedField.Resolve(RefreshMode.KeepCurrentValues)
End If
Next changedField
Next changedListItem
End Try
' Remainder of catch block omitted.