none
Sharepoint custom field type: не обновляется RRS feed

  • Вопрос

  • Добрый день.

    Столкнулась с такой проблемой: есть кастомное поле, которое, как известно, нельзя изменить в представлении таблицы или в Access. Была попытка обновить значение этого поля программно. Попытка провалилась с ошибкой, что тип поля установлен не верно. Несмотря на это, поле корректно работает.

    Как можно заполнить это поле избежав ручного редактирования?

    5 октября 2011 г. 8:31

Ответы

  • А код поля?

    в xml определения филда все правильно указано?
    особенно в <Field Name="FieldTypeClass">....</Field>
    в этом теге ваша сборка корректно указана???

    • Изменено AlexanderShelopukho 5 октября 2011 г. 8:51
    • Помечено в качестве ответа Anna-B 5 октября 2011 г. 8:58
    5 октября 2011 г. 8:48

Все ответы

  • День добрый. Трудно ответить на этот вопрос не видя кода.

    Приведите пример вашего поля, и того как вы его обновляете.

    5 октября 2011 г. 8:34
  • День добрый. Трудно ответить на этот вопрос не видя кода.

    Приведите пример вашего поля, и того как вы его обновляете.


    SPSite site = new SPSite(SiteUrl.Text);
    SPWeb web = site.OpenWeb();
    SPList list = web.Lists[ListName.Text];
    string field = FieldName.Text;
    
    for(int i=0; i < tbIDsArray.Lines.Length; i++)
    {
          string sId = tbIDsArray.Lines[i];
          string dFieldValue = tbValuesArray.Lines[i];
    
          SPListItem listItem = list.GetItemById(int.Parse(sId));
          
          if(listItem != null)
          {
                listItem[field] = dFieldValue;
                listItem.Update();
           }
    
    }
    site.Close();
    

    (есть ИД-шники элементов списка и набор значения для этих элементов).

    Ошибка возникает в строке 

    listItem[field] = dFieldValue;

    5 октября 2011 г. 8:43
  • А код поля?

    в xml определения филда все правильно указано?
    особенно в <Field Name="FieldTypeClass">....</Field>
    в этом теге ваша сборка корректно указана???

    • Изменено AlexanderShelopukho 5 октября 2011 г. 8:51
    • Помечено в качестве ответа Anna-B 5 октября 2011 г. 8:58
    5 октября 2011 г. 8:48
  • Да, правильно.

    Проблема нашлась. Нужно было сборку .dll кинуть в gac. Не учла это, т.к. поле входит в проект, который не должен был попадать в Gac.

    Спасибо за ответы.

    5 октября 2011 г. 8:58