我正在尝试创建具有以下类型的网站列:文本、注释、数字、选项、用户、多用户、多选项
除了User、MultiChoice和MultiUser之外,我已经为所有类型实现了它似乎找不到如何实现它。这就是我迄今为止所取得的成就。
StringBuilder choiceFieldGenericShema = new StringBuilder();
choiceFieldGenericShema.Append("<Field Type='Choice' Format='Dropdown' Group='{1}' Name='{0}' DisplayName='{2}' Status='{3}' > <CHOICES> ");
choiceFieldGenericShema.Append("</CHOICES> </Field> ");
string choicFieldSchema = string.Format(choiceFieldGenericShema.ToString(), columnItem.Title, columnItem.GroupName, columnItem.Name, columnItem.Status);
var newField = web.Fields.AddFieldAsXml(choicFieldSchema, true, AddFieldOptions.DefaultValue);
clientContext.Load(newField);
clientContext.ExecuteQuery();
有人能按照上面的方法提出一种方法来完成我的任务吗?提前感谢!
我建议你看看这些文章:
- 包含不同字段类型的XML声明的列表
- 向网站添加列
在这种情况下,您需要对一些属性进行调整,以切换选项+用户字段的多选:
选择:
<Field Type="MultiChoice"
DisplayName="Labels_Selected"
FillInChoice="FALSE"
Group="Sample Site Columns"
ID="{2fdf0ba7-0052-4e9f-80f6-e7669ac4ae4f}"
SourceID="http://schemas.microsoft.com/sharepoint/v3"
StaticName="LabelsSelected" Name="LabelsSelected">
</Field>
用户:
<Field ID="{A0372EB5-A947-41CA-A5FA-A34C29D2FB88}"
Name="Employee"
DisplayName="Employee"
Type="UserMulti"
Required="TRUE"
StaticName="Employee"
UserSelectionMode="PeopleOnly"
Group="SampleGroup"/>
您可以使用csom
创建站点列,下面是代码
string schemaChoiceField = "<Field ID='<GUID>' Type='Choice' Name='SideDishesChoice' StaticName='SideDishesChoice'
DisplayName='Side dishes' Format='RadioButtons'>"
+ "<Default>Patatoes</Default>"
+ "<CHOICES>"
+ " <CHOICE>Fresh vegetables</CHOICE>"
+ " <CHOICE>Beans</CHOICE>"
+ "</CHOICES>"
+ "</Field>";
对于下拉菜单或单选按钮,请单击链接http://projectservercode.com/create-choice-type-site-column-using-csom-sharepoint/