2010-05-11 2 views
4

En général, existe-t-il un moyen décent dans SharePoint de contrôler les conditions de concurrence en raison de deux processus ou même de deux machines de la batterie opérant sur la même liste ou le même élément de liste en même temps? En d'autres termes, existe-t-il un mécanisme intégré ou pouvant être fabriqué via le modèle objet pour effectuer un verrouillage croisé ou inter-machines des éléments de liste individuels?Méthode de verrouillage de la liste/élément SharePoint entre processus/machines?

Je veux écrire un travail de minuteur qui effectue un tas de manipulations sur une liste. Cette liste est écrite par l'interface utilisateur SharePoint, puis lue par l'interface utilisateur. Je veux être en mesure de vérifier que l'interface utilisateur n'écrit pas ou ne lit pas dans la liste lorsqu'elle est dans un état incohérent, car le travail du minuteur est en cours de manipulation. Est-ce qu'il y a un moyen de faire ça?

De plus, je souhaite autoriser l'exécution simultanée de plusieurs instances du travail du minuteur. Ceci, encore, exigera un verrou pour être sûr que les deux travaux n'essaient pas de fonctionner sur la même liste/article en même temps.

TIA pour toute aide!

Répondre

0

Je crois (mais ne pas avoir la chance de tester) que optimistic concurrency control au niveau de l'élément de la liste est intégrée.

Si vous êtes l'application ne vraiment besoin de plus de contrôle sur le verrouillage (par exemple au niveau de la liste) alors peut-être son odeur de code que vous pousser les listes SharePoint trop dur et vous devriez utiliser un SGBDR (par exemple SQL Server) avec plein ACID properties?

1

Jetez un oeil à la façon dont

  • une bibliothèque de documents standard outils check-out/check-in
  • ce bloque efficacement la SP - élément correspondant à un document

Vous peut alors

  • développer un liste personnalisée
  • faisant usage de la même check-out/check-in approche

Hope this helps

Questions connexes