今天从遇到了一个非常诡异的问题,遍历了SPList中所有的View,想取到view所包含的fields,结果却非常令人疑惑。有时候从SPView.ViewFields中取得的结果是正确的,有的时候就会得到错误的结果(无论在SharePoint中如何选择选择view中包含的Fields,在对象模型中取得的都是相同的Fields)。
经过分析发现SharePoint的代码在某个地方坐了优化,如果在获取SPView的ViewFields属性之前从新Open当前view所在的web,并一步步取到View就没问题了