首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Microsoft.SharePoint.Client在线FieldType映射

Microsoft.SharePoint.Client在线FieldType映射
EN

Stack Overflow用户
提问于 2018-02-21 18:52:10
回答 1查看 516关注 0票数 0

我正在尝试将值推入SharePoint联机列表。有几个问题:

  1. 如果我使用SharePoint联机结构创建这段代码,这是否也适用于拥有自己的前提服务器的公司?还是我必须创建一个全新的代码库来支持这一点?SPFieldTypeFieldType之间似乎有很大的区别,或者是代码自动进行了更改?
  2. 在映射FieldType时,我需要一些引用或代码来解释各种字段类型的适当映射。我在2013年的姐妹产品SharePoint上看到了这些,例如:

https://social.technet.microsoft.com/wiki/contents/articles/21801.sharepoint-a-complete-guide-to-getting-and-setting-fields-using-c.aspx

但2013年SPFieldTypeMicrosoft.SharePoint.Client.FieldType之间的差异似乎相当大。是否有相应的内容来描述每个字段类型需要什么才能使FieldType中的值成功

下面是我现有的代码的一个例子,以及我仍然缺少的内容:

代码语言:javascript
复制
       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();
    }

缺少的方法只是将数据中的值转换为适当的字符串。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-22 09:08:30

服务器对象模型和.NET客户机对象模型是不同的。如果您想将值推入SharePoint在线列表中,我建议您使用Pnp- PowerShell来实现它。

加-PnPListItem

关于字段类型,请检查来自GetField的代码。

如果不想使用PowerShell,则需要将Server对象模型代码转换为客户端对象模型代码。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48913366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档