Posted By

blackf0rk on 12/03/09


Tagged

list id next item sharepoint SPList SPListItem


Versions (?)

Who likes this?

1 person have marked this snippet as a favorite

jlaws0n


Next SPListItem ID From SPList


 / Published in: C#
 

URL: http://www.codedigest.com/Articles/Sharepoint/279_How_do_I_tell_what_the_next_list_item_ID_is.aspx

In order to accurately get the next ID from a SharePoint list you need to access the content database for one reason: If you delete all the items from a list, and execute this simple code: list.Items[list.ItemCount -1].ID) + 1 the ID will always return 0 when in reality the real ID of the next ID will be the auto-increment number in the content database.

Note that list.Items[list.ItemCount -1].ID) + 1 will work as long as one record is always kept in the list and is never deleted.

  1. SPSite site = new SPSite("sharepoint site URL");
  2. int NextID = 0;
  3. if(site.WebApplication.ContentDatabases.Count > 0)
  4. {
  5. string DBConnString = site.WebApplication.ContentDatabases[0].DatabaseConnectionString;
  6. SqlConnection con = new SqlConnection(DBConnString);
  7. try
  8. {
  9. con.Open();
  10. SqlCommand com = con.CreateCommand();
  11. com.CommandText = String.Format("select tp_NextAvailableId from AllLists where tp_ID = '{0}'", listId.ToString());
  12. NextID = (int)com.ExecuteScalar();
  13. }
  14. finally
  15. {
  16. con.Close();
  17. }
  18. }

Report this snippet  

You need to login to post a comment.