如何使用Visual Studio 2010将新列添加到SharePoint 2010中的所有文档库列表?

时间:2010-10-08 21:53:16

标签: c# visual-studio-2010 sharepoint-2010

我无法弄清楚如何在Visual Studio 2010中创建一个允许我更改SharePoint 2010网站中现有列表的解决方案。具体来说,我想在现有的文档库列表中添加一个包含小图标的新列。我希望能够在有人点击其中一个新图标时采取行动。我还希望这个新列成为新文档库列表的默认视图的一部分。所有这些都需要通过.wsp文件轻松部署到SharePoint 2010网站。

Google上的广泛搜索已经展示了如何创建新列表和新列类型,以及如何以编程方式将列添加到其中一个新列表,而不是如何修改所有现有列表。

我是SharePoint的新手,任何对解决方案的指示都会非常感激。谢谢!

1 个答案:

答案 0 :(得分:0)

如果您确实要更改网站中的所有文档库,可以尝试更改内容类型:

using (SPSite site = new SPSite("http://localhost"))
{
    using (SPWeb web = site.OpenWeb())
    {
        SPContentType ct = web.ContentTypes[SPBuiltInContentTypeId.Document];
        SPField fld = web.Fields.GetField(fldName);
        SPFieldLink lnk = new SPFieldLink(fld);
        ct.FieldLinks.Add(lnk);
        ct.Update(true);
    }
}

上述代码从SPContentType.Update Method (Boolean)的示例缩短并修改。 MSDN文章还提供了有关Updating Content Types的详细一般信息。