Order List Content Types or Solve your "Specified argument was out of the range of valid values.Parameter name: id / value"

Order List Content Types or Solve your "Specified argument was out of the range of valid values.Parameter name: id / value"

  • Comments 2

Hi,

You have tried to order the content type list for a list and you are not able to do it. You always receive an error when UniqueContentTypeOrder is set. Take a look at the following steps in order to resolve the issue.

SPFolder folder = list.RootFolder;
IList<SPContentType> contentTypeCollection = new List<SPContentType>();

contentTypeCollection = folder.ContentTypeOrder;
contentTypeCollection.RemoveAt(0);
folder.UniqueContentTypeOrder = contentTypeCollection;
folder.Update();


in the code above the rootfolder for the list is updated with a new content type collection without the first item. This will update fine the list. the differences:

  • You cannot create the list, add content types and change the order in the same step. First create list, add content types, update and later change the order with a fresh list reference.
  • The contentTypeCollection must be a list qirh the list contentType references, NOT web or site reference.
    • Do not contentTypesCollection.Add(web.ContentTypes[new SPContentTypeId(ct)]);
    • DO contentTypesCollection.Add(list.ContentTypes[new SPContentTypeId(ct)]);

Bye!

Leave a Comment
  • Please add 5 and 7 and type the answer here:
  • Post
  • Thanks, Carlos! This helped a lot.

  • Thx a lot, great advise

Page 1 of 1 (2 items)