zoukankan      html  css  js  c++  java
  • sharepoint 2010 FieldLookup 的更新方法

    网上有,但是是错误的,稍微改一下,就可以了

    第一个方法是要更新的item,其中 _fieldname 为要更新的lookup字段名字,_lookupValue为要更新的值。

    public void SetFieldValueLookup(SPListItem _item, string _fieldname, string _lookupValue)
            {
                if (_item != null)
                {
                    SPFieldLookup field = _item.Fields.GetFieldByInternalName(_fieldname) as SPFieldLookup;
                    _item[_fieldname] = GetLookupValue(_item.Web, field, _lookupValue);
                    _item.Update();
                }
                else
                {
                    _item[_fieldname] =null;
                }
            }

            public SPFieldLookupValue GetLookupValue(SPWeb _web, SPFieldLookup _field, string _lookupvalue)
            {
                string queryFormat = @"<Where><Eq><FieldRef Name='{0}' /><Value Type='Text'>{1}</Value></Eq></Where>";
                string queryText = string.Format(queryFormat,  _field.LookupField, _lookupvalue);
                SPList lookupList = _web.Lists[new Guid(_field.LookupList)];
                SPQuery query = new SPQuery();
                query.Query = queryText;
                SPListItemCollection lookupItems = lookupList.GetItems(query);

                if(lookupItems.Count > 0)
                {
                    int lookupId = Convert.ToInt32(lookupItems[0][SPBuiltInFieldId.ID]);
                    return new SPFieldLookupValue(lookupId, _lookupvalue);
                }
                else
                {
                    return null;
                }

            }

    用这个方法就可以了._field.LookupField是关联另一个item的字段

  • 相关阅读:
    隐含马尔科夫模型的训练
    隐马尔科夫模型
    联合概率、边缘概率、条件概率
    移除集合元素
    常用的概率分布:伯努利分布、二项式分布、多项式分布、先验概率,后验概率
    探索性数据分析EDA综述
    奇异值分解(SVD)原理及应用
    分类算法的评价
    【底层原理】数据库的最简单实现
    深度学习模型超参数搜索实用指南
  • 原文地址:https://www.cnblogs.com/tdskee/p/3312227.html
Copyright © 2011-2022 走看看