zoukankan      html  css  js  c++  java
  • 深入浅出SharePoint——获取Choice Field的Mapping value

    list field对应的caml定义如下

          <Field Type="Choice" DisplayName="Inspection Result" Required="FALSE" Format="RadioButtons" FillInChoice="FALSE" Group="C0370A" ID="{5D00E04C-9BA6-4f78-BC51-2D2EC2C2EC73}" SourceID="{1e228f79-b273-49cd-b9cc-507b1ecc7c5c}" StaticName="VPPI_InspectionResult" Name="VPPI_InspectionResult"  >
            <CHOICES>
              <CHOICE>Satisfactory</CHOICE>
              <CHOICE>Unsatisfactory – but no assistance is needed</CHOICE>
              <CHOICE>Unsatisfactory – I need assistance</CHOICE>
            </CHOICES>
            <MAPPINGS>
              <MAPPING Value="1">Satisfactory</MAPPING>
              <MAPPING Value="2">Unsatisfactory – but no assistance is needed</MAPPING>
              <MAPPING Value="3">Unsatisfactory – I need assistance</MAPPING>
            </MAPPINGS>
          </Field>

    Console应用程序:

    读取第一个item中choice单选类型的field的value值

    class Program
        {
            static void Main(string[] args)
            {
                using (SPSite site = new SPSite("http://cris-moss/sites/EHS"))
                {
                    using (SPWeb web = site.OpenWeb())
                    {
                        SPList list = web.Lists["Safety Inspection Verification"];
                        if (list != null)
                        {
                            SPListItem item = list.Items[0];
                            SPFieldChoice chVisiblity = (SPFieldChoice)item.Fields.GetField("VPPI_InspectionResult");
                            object value = item["VPPI_InspectionResult"];
                            string selectedText = chVisiblity.GetFieldValueAsText(item["VPPI_InspectionResult"]);
                            Console.WriteLine("The value of the field is {0}, which means '{1}'.",
                                     value.ToString(), GetMappingValueforSPFieldChoice(selectedText,chVisiblity.Mappings));
                        }
                        Console.ReadLine();
                    }
                }
            }
    
            static string GetMappingValueforSPFieldChoice(string selectedText,string mappings)
            {
                string selectedValue = string.Empty;
                XmlDocument doc=new XmlDocument(); 
                doc.LoadXml(mappings);
                XmlNode node = doc.SelectSingleNode("MAPPINGS/MAPPING[text()='" + selectedText + "']");
                selectedValue = node.Attributes["Value"].Value;
                return selectedValue;
            }
        }
  • 相关阅读:
    锁详解
    消息组件
    分布式锁
    jvm调优
    类加载
    垃圾回收
    Mysql
    redis
    悲观锁和乐光锁
    算法常见
  • 原文地址:https://www.cnblogs.com/mingle/p/3210669.html
Copyright © 2011-2022 走看看