2016-09-09 3 views
0

Je convertis des codes de récepteur d'événement en récepteur d'événement distant en utilisant le contexte SharePoint 2013 Client.Quelle est la meilleure méthode pour obtenir la propriété pour le type de contenu avec la correspondance la plus proche en utilisant le contexte client (CSOM)?

var documentList = clientContext.Web.GetList(Constants.DocumentsListUrl); 
var classifiedContentTypeId = documentList.ContentTypes.BestMatch(new 
SPContentTypeId("0x0120D52000155C54BB8DF04DE78D5F78461B236DEF")); 
var classifiedContentType = 
documentList.ContentTypes[classifiedContentTypeId]; 

Notez que si la recherche trouve deux correspondances, l'ID le plus court est renvoyé. Par exemple, si 0x0101 est l'argument et que la collection contient à la fois 0x010109 et 0x01010901, la méthode renvoie 0x010109.

La méthode List.ContentTypes.BestMatch est disponible pour obtenir la correspondance la plus proche dans SSOM. Quelle est la bonne méthode dans CSOM? Merci à l'avance

Répondre

0

Une idée est d'utiliser la méthode

ContentType.Id.IsChildOf() 

et utiliser des méthodes de chaîne pour choisir le Guid le plus court?

+0

Nous vous remercions de votre suggestion, isChildof n'est pas disponible dans CSOM Avez-vous des logiques pour obtenir le GUID le plus court de la collection? – kalimuthu

+0

Vous pouvez obtenir des types de contenu enfant en utilisant une méthode simple 'contains'. Les types de contenu enfant contiennent toujours l'ID du type de contenu parent. Donc, en utilisant contient et en comparant les longueurs, vous pouvez contourner ce manque d'autres méthodes. Pas la meilleure solution mais ça devrait aller – Verthosa