我正在尝试将值推入SharePoint联机列表。有几个问题:
SPFieldType和FieldType之间似乎有很大的区别,或者是代码自动进行了更改?FieldType时,我需要一些引用或代码来解释各种字段类型的适当映射。我在2013年的姐妹产品SharePoint上看到了这些,例如:但2013年SPFieldType与Microsoft.SharePoint.Client.FieldType之间的差异似乎相当大。是否有相应的内容来描述每个字段类型需要什么才能使FieldType中的值成功
下面是我现有的代码的一个例子,以及我仍然缺少的内容:
public string ToString(Microsoft.SharePoint.Client.FieldType ColumnType)
{
switch (ColumnType)
{
case Microsoft.SharePoint.Client.FieldType.Boolean:
// 0 or 1, or "true" or "false"???
break;
case Microsoft.SharePoint.Client.FieldType.Calculated:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.Choice:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.Computed:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.Currency:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.DateTime:
return GetDateTimeValue().ToString("yyyy-MM-dd");
case Microsoft.SharePoint.Client.FieldType.File:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.GridChoice:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.Guid:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.Integer:
return GetIntValue().ToString();
case Microsoft.SharePoint.Client.FieldType.Lookup:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.MultiChoice:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.Note:
return GetStringValue();
case Microsoft.SharePoint.Client.FieldType.Number:
return GetDoubleValue().ToString();
case Microsoft.SharePoint.Client.FieldType.Text:
return GetStringValue();
case Microsoft.SharePoint.Client.FieldType.User:
// No idea!
break;
case Microsoft.SharePoint.Client.FieldType.URL:
// No idea!
break;
// No Idea what to do for these
case Microsoft.SharePoint.Client.FieldType.WorkflowEventType:
case Microsoft.SharePoint.Client.FieldType.WorkflowStatus:
case Microsoft.SharePoint.Client.FieldType.AllDayEvent:
case Microsoft.SharePoint.Client.FieldType.Attachments:
case Microsoft.SharePoint.Client.FieldType.ThreadIndex:
case Microsoft.SharePoint.Client.FieldType.Threading:
case Microsoft.SharePoint.Client.FieldType.PageSeparator:
case Microsoft.SharePoint.Client.FieldType.Recurrence:
case Microsoft.SharePoint.Client.FieldType.Invalid:
case Microsoft.SharePoint.Client.FieldType.ContentTypeId:
case Microsoft.SharePoint.Client.FieldType.Counter:
case Microsoft.SharePoint.Client.FieldType.CrossProjectLink:
case Microsoft.SharePoint.Client.FieldType.MaxItems:
case Microsoft.SharePoint.Client.FieldType.ModStat:
case Microsoft.SharePoint.Client.FieldType.Error:
break;
default:
return GetStringValue();
}
return GetStringValue();
}缺少的方法只是将数据中的值转换为适当的字符串。
发布于 2018-02-22 09:08:30
服务器对象模型和.NET客户机对象模型是不同的。如果您想将值推入SharePoint在线列表中,我建议您使用Pnp- PowerShell来实现它。
关于字段类型,请检查来自GetField的代码。
如果不想使用PowerShell,则需要将Server对象模型代码转换为客户端对象模型代码。
https://stackoverflow.com/questions/48913366
复制相似问题