我正在通过C#.Net应用程序使用Webservice Lists.AddList方法在SharePoint中创建文档库。 (见下文)
listsService.AddList(listTitle, listDescription, 101);
我希望它们显示在他们创建的网站下的“快速启动”菜单中,而不仅仅是“所有网站内容”菜单中。
我已经查看了Lists.UpdateList()方法,但没有太多运气。
有没有人知道如何通过Web服务执行此操作? (它无法手动完成,因为要更改的列表太多了。)
我正在使用最新版本的SharePoint Server和Web服务。
谢谢你:)
答案 0 :(得分:2)
我认为您通过网络服务无法设置OnQuickLaunch
是正确的。在OnQuickLaunch
listProperties
中为UpdateList
设置OnQuickLaunch="true"
是我会尝试的,但听起来不行。
如果您的列表尚不存在,我建议您使用AddListFromFeature
创建包含列表模板的功能,并通过{{1}}添加列表。您的另一个选择似乎是编写自己的服务来通过对象模型设置属性。
答案 1 :(得分:2)
XmlDocument xmlDoc = new System.Xml.XmlDocument();
XmlNode ndProperties = xmlDoc.CreateNode(XmlNodeType.Element, "List", "");
XmlAttribute ndQuickLaunchAttrib = (XmlAttribute)xmlDoc.CreateNode(XmlNodeType.Attribute, "OnQuickLaunch", "");
ndQuickLaunchAttrib.Value = "True";
ndProperties.Attributes.Append(ndQuickLaunchAttrib);
XmlNode ndReturn = proxy.UpdateList("12345", ndProperties, null, null, null, null);
答案 2 :(得分:0)
最好先创建一个SPList对象,然后执行OnQuickLaunch =“true”。不要忘记更新命令!
Example:
Guid listID = Guid.Empty;
listID = siteObject.Lists.Add("Title","Description",listTemplateObject);
//This will work:
SPList thisList = siteObject.Lists[ListID];
thisList.OnQuickLaunch = true;
thisList.Update();