我正在创建我的ContentTypes,之后我将尝试创建我的字段。
在搜索了几个小时后,我的头撞到了墙上,关于如何获得组,你可以在其中放置字段(查看图片了解我所指的内容)

谁能解释一下,我怎样才能从我的图片中获得这些组的列表?
var web = _Ctx.Web;
_Ctx.Load(web, w => w.ContentTypes, w => w.Fields);
_Ctx.ExecuteQuery();
foreach (lavaPOINT_Page page in new PageAndFieldData().Pages)
{
if (!web.ContentTypes.ToList().Exists(i => i.Id.ToString() == page.ID))
{
var spbt = web.ContentTypes.Add(new ContentTypeCreationInformation()
{
Name = page.Name,
Id = page.ID,
Group = page.Group,
Description = page.Group
});
_Ctx.Load(spbt, f => f, f => f.Fields.Include(i => i.InternalName));
_Ctx.ExecuteQuery();
}
}
var fields = web.Fields;
var Groups = ? // how do i get the Groups *??
foreach (var field in new PageAndFieldData().Fields)
{
var teaser = web.Fields.FirstOrDefault(i => i.InternalName == field.field_name); // if dont exist = create
if (teaser == null)
{
var fieldXml = "<Field Type=\"Note\" DisplayName=\"Teaser\" Required=\"FALSE\" EnforceUniqueValues=\"FALSE\" Indexed=\"FALSE\" NumLines=\"6\" RichText=\"FALSE\" Sortable=\"FALSE\" Group=\"Fields\" ID=\"{fdfba8f7-4521-4db4-b6c2-8ab88e065834}\" SourceID=\"{5119e221-4abe-4200-8d82-910db701336a}\" StaticName=\"NewsPageTeaser\" Name=\"NewsPageTeaser\" RestrictedMode=\"TRUE\" RichTextMode=\"Compatible\" IsolateStyles=\"FALSE\" AppendOnly=\"FALSE\" UnlimitedLengthInDocumentLibrary=\"FALSE\"></Field>";
var spField = web.Fields.AddFieldAsXml(fieldXml, false, AddFieldOptions.DefaultValue);
//_Ctx.Load(spField);
//_Ctx.ExecuteQuery();
}
}发布于 2017-01-18 20:28:55
我找到了一种方法来获得所有的组。但可以肯定的是,这不是最好的。
var groups = fields.ToList().Select(i => i.Group).Distinct();https://stackoverflow.com/questions/41714589
复制相似问题