Selasa, 07 Februari 2017

Cara Mengunakan Sharepoint 2013 Dengan C#




Cara mengunakan share point mengunakan C# adalah metode ini dibuat agar bagaimana kita dapat mengambil user detail pada column.

Sebagai Ilustrasi, misalnya kita memiliki sebuah list dengan salah satu columnnya bertipe "person dan Group", kemudian  dari data yang akan diambil user detailnya, seperti nama, Username dan Email. Untuk  contoh saya akan menampilkan data-data tersebut ke dalam GridView.

Hal yang pertama yang dilakukan adalah dengan membuat sebuah method untuk mengambil data pada sebuah list.

 private IEnumerable TakeListData()  
   {  
     IEnumerable<SPListItem> myListItem = null;  
     using (SPSite site = new SPSite(SPContext.Current.Web.Url))  
     {  
       using (SPWeb web = site.OpenWeb())  
       {  
         SPList list = web.Lists.TryGetList("User Detail");  
         if (list == null) return null ;  
         SPQuery query = new SPQuery();  
         query.Query = "";  
         SPListItemCollection rs = list.GetItems(query);  
         myListItem = rs.OfType<SPListItem>();  
       }  
     }  
     return myListItem;  
   }  


Selanjutnya adalah membuat method, dimana proses konversi dari SPListItem menjadi SPUser.


  private SPUser getUser(SPListItem item)  
   {  
     SPFieldUser field = item.Fields.GetFieldByInternalName("Approver") as SPFieldUser;  
     if (field != null)  
     {  
       SPFieldUserValue fieldValue = field.GetFieldValue(item["Approver"].ToString()) as SPFieldUserValue;  
       if (fieldValue != null)  
         return fieldValue.User;  
     }  
     return null;  
   }  



"Approver" adalah column yang memilki tipe "Person and Group".  Langkah terakhir adalah dengan membuat method untuk menampilkan detail user kedalam GridView.

 private void BindData()  
   {  
     IEnumerable myListItem = TakeListData();  
     DataTable dtApprover = new DataTable();  
     dtApprover.Columns.Add("LoginName", typeof(string));  
     dtApprover.Columns.Add("Name", typeof(string));  
     dtApprover.Columns.Add("Email", typeof(string));  
     foreach (var item in myListItem)  
     {  
       SPUser user = getUser(item);  
       DataRow row = dtApprover.NewRow();  
       row["Name"] = user.Name;  
       row["LoginName"] = user.LoginName;  
       row["Email"] = user.Email;  
       dtApprover.Rows.Add(row);  
     }  
     ASPxGridView1.DataSource = dtApprover;  
     ASPxGridView1.DataBind();  
   }  

Semoga  artikel ini bermanfaat.

Tidak ada komentar:

Posting Komentar