2015-06-16 9 views
0

У меня есть сайт команды, я создал библиотеку документов с документами в ней, я пытаюсь установить столбец в библиотеке документов пустым.Сайт команды с библиотекой документов

Но колонка не пуста?

public override void FeatureActivated(SPFeatureReceiverProperties properties) 
{ 
    SPWeb web = (SPWeb)properties.Feature.Parent; 

    SPList list = web.Lists.TryGetList("Document Library"); 
    if (list != null) 
    { 
     SPListItemCollection listItemCollection = list.GetItems(); 
     foreach (SPListItem item in listItemCollection) 
     { 
      var columnToUpdate ="MyField"; 
      string internalName = item.Fields[columnToUpdate].InternalName; 

      item[internalName] = ""; 
      item.Update(); 
     } 
    } 
} 

ответ

0

Я думаю, вы должны найти другой способ, чтобы опустошить поле, чем в цикле Еогеаспа, поскольку Еогеасп предназначен перебирать контейнер, убедившись, что каждый пункт посещается ровно один раз, не меняя контейнер, чтобы избежать неприятного (т.е. foreach доступен только для чтения). Возможно, попытка сделать аналогичные шаги для for loop помогает, как в этом коде:

SPListItemCollection listItemCollection = list.GetItems(); 

    for (int i = 0; i < listItemCollection.Count; i++) 
    { 
     var columnToUpdate = "MyField"; 
     var item = listItemCollection[i]; 
     string internalName = item.Fields[columnToUpdate].InternalName; 

     item[internalName] = ""; 
     item.Update(); 
    } 

Надеюсь, это поможет. Также я рекомендую задать этот вопрос на https://sharepoint.stackexchange.com/, если вы не нашли решения здесь.

 Смежные вопросы

  • Нет связанных вопросов^_^