Версии SPFileVersionCollection и SPListItemVersionCollection мне кажутся несовместимыми. Несоответствие не будет проблемой для меня, но порядок сортировки.
SPListItemVersionCollection
Я могу понять управление версиями ListItems, поскольку они хранятся в порядке убывания:
SPContext.Current.ListItem.Versions.Count -> 5
SPContext.Current.ListItem.Versions[0].VersionId -> 1026 (2.2 latest version)
SPContext.Current.ListItem.Versions[1].VersionId -> 1025 (2.1)
SPContext.Current.ListItem.Versions[2].VersionId -> 1024 (2.0)
... [4].VersionId -> (oldest version)
SPFileVersionCollection
Однако я не могу понять, как номера версий сохраняются для элемента библиотеки документов:
SPContext.Current.ListItem.File.Versions.Count -> 4
SPContext.Current.ListItem.File.Versions[0].ID -> 512 (1.0 oldest one)
SPContext.Current.ListItem.File.Versions[1].ID -> 513 (1.1)
SPContext.Current.ListItem.File.Versions[2].ID -> 1025 (2.1 latest version)
SPContext.Current.ListItem.File.Versions[3].ID -> 1024 (2.0 (EDIT: IsCurrentVersion = True))
Они не находятся ни в порядке возрастания, ни в порядке убывания, но что-то смешано.
Есть ли какая-то причина для команды SharePoint принять решение о сохранении таких версий SPFile? И ожидают ли они, что я напишу свой собственный метод для получения последней версии или есть встроенный для этого?
Примечание. Позвольте мне указать, что SPListItem.File не является нулевым для элементов библиотеки документов.