1
正如标题所示:在SharePoint 2010中,我需要以编程方式创建一个视图,让我可以过滤列表上的项目(人员列表)。在这个人名单中我有一个查询字段,指的是另一个列表(项目):我需要只显示在确定的项目上工作的人(作为字符串传递)SP2010:如何创建一个过滤查找字段的列表视图
我已经创建了一个使用此代码的示例视图:
class Program
{
static void Main(string[] args)
{
using (SPSite site = new SPSite("http://dev_seventeen:999"))
{
using (SPWeb web = site.OpenWeb())
{
SPList books = web.Lists["Books"];
StringCollection fields = new StringCollection();
fields.Add("Title");
fields.Add("Publisher");
fields.Add("Autore");
var query = new XElement("Where",
new XElement("Eq",
new XElement("FieldRef", new XAttribute("Name", "Publisher")),
new XElement("Value", new XAttribute("Type", "Choice"), "Alpha")
)
).ToString(SaveOptions.DisableFormatting);
SPView view = books.Views.Add("TestView",
fields,
query,
100,
false,
false,
Microsoft.SharePoint.SPViewCollection.SPViewType.Html,
false
);
Console.WriteLine(query);
Console.ReadLine();
}
}
}
}
它过滤了一个名为名为“发布”选择类型字段“书”,寻找由“阿尔法”出版的所有书籍
我需要知道名单是如何在过滤器查询字段而不是chioce字段,因为如果我只是在查询中将“查询”替换为“选择”,则它不起作用=(
谢谢
一定有什么错......我曾经试了一次,显然没有修改任何东西,它的工作原理(使用常规的“查找”作为值类型)。最奇怪的是,如果我尝试使用“文本”值类型进行过滤,将视图应用于列表时出现此错误:“一个或多个字段类型未正确安装。转到列表设置页面以删除这些田“。 = O – Maik 2010-10-15 10:31:36
关于字段类型错误:您是否在使用列的内部名称?看到这个常见问题:http://www.sharepoint-tips.com/2007/04/one-of-more-field-types-are-not.html – 2010-10-16 09:16:27
感谢它现在的作品! – Maik 2010-10-18 07:06:13