Столбец сайта не удаляется - PullRequest
0 голосов
/ 23 июля 2010

У меня есть столбец сайта, который я программно удаляю, используя следующий код. Я уже удалил все ссылки на поле ранее. Однако, даже если ошибки нет, она переходит к fieldtodelete.Delete () и переходит к следующей строке. Однако, когда я проверяю коллекцию столбцов сайта с помощью SPM2007 или через пользовательский интерфейс, столбец сайта все еще там.

        Dim fieldtodelete As SPField
        Try
            fieldtodelete = site.RootWeb.Fields.GetFieldByInternalName(name)
            'site.RootWeb.Fields.GetFieldByInternalName(name)
            fieldtodelete.Delete()
        Catch ex As Exception

            Console.WriteLine("Field: {0} was not deleted", name)
            Return 0
        End Try

Есть идеи, почему sharepoint делает это? Кроме того, есть 2 поля с одинаковым именем, я не уверен, имеет ли это прямое влияние на это. Я хочу удалить оба.

Спасибо

1 Ответ

1 голос
/ 24 июля 2010

Поскольку есть 2 поля с одинаковым именем, их внутренние имена, вероятно, отличаются от имени.Вы уверены, что строка

fieldtodelete = site.RootWeb.Fields.GetFieldByInternalName(name)

фактически возвращает действительный SPField?Если нет, вам нужно будет найти внутренние имена полей, которые не обязательно совпадают с именами.

РЕДАКТИРОВАТЬ: Поскольку вы сказали, что вы получаете поля обратно, я понял, что вы не 't вызов site.RootWeb.Update() после удаления поля.Это должно решить проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...