Основываясь на этом answer я дал родственный question, я хотел бы предложить следующий запрос:
SPListItem lastItem;
try
{
using (SPSite objSite = new SPSite(sSiteUrl))
{
using (SPWeb objWeb = objSite.OpenWeb())
{
SPList objList = objWeb.Lists["MainHeads"];
SPQuery objQuery = new SPQuery();
objQuery.Query = "<OrderBy><FieldRef Name='HeadID' Ascending='False' /></OrderBy><RowLimit>1</RowLimit>";
objQuery.Folder = objList.RootFolder;
// Execute the query against the list
SPListItemCollection colItems = objList.GetItems(objQuery);
if (colItems.Count > 0)
{
lastItem = colItems[0];
}
}
}
}
catch (Exception ex)
{
...
}
return lastItem;
Предполагается, что вы выполняете CAML в коде. ЕСЛИ нет, см. F. Aquino's answer.
Альтернативой может служить идентификационная колонка, которая (AFAIK) также доступна для каждого элемента. –