2014-03-03 3 views
1

여러 개의 sahrepoint 웹 사이트에서 사이트 사용 정보를 가져 오는 foreach 루프에서 실행되는 데이터 테이블이 있습니다. 각 foreach 반복 옆에 열을 추가하여 사이트 URL을 추가 할 수있게하려면 사이트 URL을 항목 아래에 표시하는 새로운 행을 추가하는 방법 만 알아낼 수 있습니다.데이터 테이블에서 행 편집 C#

Data Table

어떻게 위의 행에 갈 수있는 URL을 얻을 수 있습니다 : 그래서처럼?

내 코드는 다음과 같습니다 :

당신이 기존 행에 DataTable을 오히려 당신이 설정해야합니다 값을 기존의 당신에 새 행을 추가하는 이유는
SPListItemCollection items = list.GetItems(query); 
        DataTable aggregatedTable = new DataTable(); 
        foreach (SPListItem item in items) 
        { 
         string url = item["SiteUrl"].ToString(); 
         try 
         { 
          using (SPSite siteadd = new SPSite(url)) 
          using (SPWeb webadd = siteadd.OpenWeb()) 
          { 
           // 


           DataTable table = webadd.GetUsageData(Microsoft.SharePoint.Administration.SPUsageReportType.browser, Microsoft.SharePoint.Administration.SPUsagePeriodType.lastMonth); 
           table.Columns.Add("url"); 
           if (table == null) 
           { 
            // HttpContext.Current.Response.Write("Table Null"); 
           } 
           else 
           { 

            DataRow dr; 

            dr = table.NewRow(); 
            dr["url"] = url; 
            table.Rows.Add(dr); 

            // table.Rows.Add(url); 



            aggregatedTable.Merge(table);//Append the data to previous site data. 
           } 
          } 
         } 
         catch { } 
        } 
        dataGridView1.DataSource = aggregatedTable;//bind datatable with 

답변

1

.

var CurRow = table.AsEnumerable().FirstOrDefault(); 
     table.Columns.Add("url"); 
     if (CurRow != null) 
     { 
      CurRow["url"] = url; 
     } 
관련 문제