Sharepoint 2007 “站点”列不会被删除

Sharepoint 2007 “站点”列不会被删除,sharepoint-2007,Sharepoint 2007,我有一个网站栏,我用下面的代码以编程方式删除它。我以前已经删除了对该字段的所有引用。但是,即使没有错误,也会转到fieldtodelete.Delete()并逐步执行下一行。但是,当我使用SPM2007或通过UI检查站点列集合时,站点列仍然存在 Dim fieldtodelete As SPField Try fieldtodelete = site.RootWeb.Fields.GetFieldByInternalName(name)

我有一个网站栏,我用下面的代码以编程方式删除它。我以前已经删除了对该字段的所有引用。但是,即使没有错误,也会转到fieldtodelete.Delete()并逐步执行下一行。但是,当我使用SPM2007或通过UI检查站点列集合时,站点列仍然存在

        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为什么会这样做吗?另外,有两个字段同名,我不确定这是否会对此产生直接影响。我想把两者都删除


谢谢

因为有两个字段同名,所以它们的内部名称可能与名称不同。你确定这是电话线吗

fieldtodelete = site.RootWeb.Fields.GetFieldByInternalName(name)
是否实际返回有效的SPField?如果没有,您将需要查找字段的内部名称,这些名称不一定与名称匹配


编辑:因为你说你要取回字段,我意识到你在删除字段后没有调用
site.RootWeb.Update()
。这应该可以解决问题。

我确实验证了我得到了字段。我也尝试过使用ID的变体。但是当我调用delete函数时,它并没有将其删除。