Вы можете связать типы контента со списком через код. Я всегда делаю это с помощью этого метода:
private void VerifyListContentTypeAssociation(SPList list, string contentType)
{
SPContentTypeId contentTypeId = new SPContentTypeId(contentType);
list.ContentTypesEnabled = true;
SPContentTypeId matchContentTypeId = list.ContentTypes.BestMatch(contentTypeId);
if (matchContentTypeId.Parent.CompareTo(contentTypeId) != 0)
{
SPContentType ct = list.ParentWeb.AvailableContentTypes[contentTypeId];
list.ContentTypes.Add(ct);
list.Update();
}
}
Вы можете использовать эту функцию в приемнике функций, например:
string contentTypeID = "0x010056eb9d8ddb324c92865eceef8a97c811";
SPList myList = web.Lists["MyList"];
VerifyListContentTypeAssociation(myList, contentTypeID);