2017-08-07 4 views
1

J'ai une liste d'employés qui a 2 colonnes (département et gestionnaire) qui sont des colonnes de recherche. J'ai besoin de code pour mettre à jour ces colonnes de recherche lorsqu'un nouvel utilisateur s'enregistre. (Bien que les autres colonnes sont mises à jour dans la liste)Comment mettre à jour une colonne de recherche de sharepoint en utilisant une grille?

Voici le code:

using (ClientContext clientContext = new ClientContext("https://sp13appstoredev.xyz.com/sites/DevApps/TrainingSite/")) 
    { 
     clientContext.Load(clientContext.Web, web => web.Title); 
     List oList = clientContext.Web.Lists.GetByTitle("Employees"); 
     clientContext.Load(oList); 
     ListItemCreationInformation itemInfo = new ListItemCreationInformation(); 
     Microsoft.SharePoint.Client.ListItem myItem = oList.AddItem(itemInfo); 
     myItem["Title"] = txtFirstName.Text; 
     myItem["Last_x0020_Name"] = txtLastName.Text; 
     myItem["u5ib"] = txtAge.Text; 
     myItem["Address"] = txtAddress.Text; 
     //FieldLookupValue lookUpDepartment = new FieldLookupValue(); 
     //myItem["Department"] = lookUpDepartment as FieldLookupValue; 
     //FieldLookupValue lookUpManager = new FieldLookupValue(); 
     //myItem["Manager"] = lookUpManager as FieldLookupValue; 
     myItem["Gender"] = radioBtnGender.Text; 
     myItem["Salary"] = txtSalary.Text; 
     myItem.Update(); 
     clientContext.ExecuteQuery(); 
    } 

Je commentais les lignes de colonne de consultation pour vérifier si les autres colonnes sont mises à jour dans la liste.

Veuillez nous aider. Merci :)

Répondre

0

Ceci est une meilleure solution:

  //Department column 
      FieldLookupValue deptItem = new FieldLookupValue(); 
      deptItem.LookupId = Convert.ToInt32(DropDownListDepartment.SelectedValue); 
      myItem["Department"] = deptItem; 
      myItem.Update(); 

      //Manager column 
      FieldLookupValue managerItem = new FieldLookupValue(); 
      managerItem.LookupId = Convert.ToInt32(DropDownListManager.SelectedValue); 
      myItem["Manager"] = managerItem; 
      myItem.Update(); 
1

Ajout des lignes suivantes travaillé:

myItem["Department"] = 1; 

myItem["Manager"] = 1; 

Je devais aussi définir la liste des parents comme ID (auparavant il était seul titre)