Quantcast
Channel: Entwicklung – HanseVision Blog
Viewing all articles
Browse latest Browse all 46

Aus der Praxis – Programmatisches Auslesen des Checkin Kommentars

$
0
0

Wieder einmal hat die SharePoint API ein seltsames Verhalten für uns Entwickler auf Lager und ich bin genau reingerannt.

Ich wollte den Checkin-Kommentar aller Versionen eines Listenelement einer Dokumentbibliothek auslesen. Intuitiv habe ich diesen Code versucht, der mir NICHT das korrekte Ergebnis lieferte.

SPListItem item = ...
foreach (SPListItemVersion itemVersion in item.Versions)
{
    string comment = itemVersion["_CheckinComment"].ToString();
}

Vielmehr wird der gleiche Checkin-Kommentar ausgegeben.

Die Lösung des Problems liegt gar nicht soweit entfernt: Man muss das Checkin-Kommentar nicht aus dem SPListItemVersion-Objekt sondern aus dem zugehörigen SPFileVersion-Objekt auslesen:

SPListItem item = ...                    
foreach (SPListItemVersion itemVersion in item.Versions)
{
    string comment;
    if (!itemVersion.IsCurrentVersion)
    {
        SPFileVersion fileVersion = item.File.Versions.GetVersionFromID(itemVersion.VersionId);
        comment = fileVersion.CheckInComment;
    }
    else
    {
        comment = item.File.CheckInComment;
    }
}

 


Viewing all articles
Browse latest Browse all 46