Sharepoint 2013:创建一个脚本,用于在添加新字段时更新列表视图

时间:2018-05-29 20:34:31

标签: sharepoint-2013

我有几个列表,每个列表创建了几个不同的视图,我被要求创建一个允许这样的sript:每次在列表中添加一个新字段时,该字段必须自动添加到所有视图中已经存在。我需要一个脚本,因为有这么多的列表,以及很多视图,以便它可以一个一个地查看它。无论如何以编程方式执行此操作?

1 个答案:

答案 0 :(得分:0)

您可以为列表创建事件接收器(假设自定义列表),然后将字段添加到所有视图。

示例代码:

SPWeb web = site.OpenWeb();
                SPList list = web.Lists["TestListLee"];
                var tmpViews = new List<SPView>();
                foreach (SPView view in list.Views)
                {
                    if (!view.ViewFields.Exists("myField"))
                    {
                        view.ViewFields.Add("myField");
                        tmpViews.Add(view);
                    }
                }
                for (int i = 0; i < tmpViews.Count; i++)
                {
                    tmpViews[i].Update();
                }