通过动态DataTable绑定gridview

时间:2014-06-13 09:57:04

标签: c# asp.net gridview data-binding datatable

我有一个GridView,我需要将它与动态数据表绑定。

我有一个List<List<string>>和一个List<List<DateTime>>

我需要一个包含3列的DataTable,即FileNameLastAccessTimeForServer1LastAccessTimeForServer2

List<List<string>>将包含2个文件名列表(两个服务器通用),而List<List<DateTime>>将包含2个上次访问时间列表(两个文件都不同)。

以下是我尝试过的代码,对我来说没什么意义。

完全困惑。

string serviceName = DropDownList1.SelectedItem.Text;
List<string> serviceNameArray = new List<string>();
for (int x = 1; x <= 2; x++)
{
if (x < 2)
{
serviceNameArray.Add(@"\\Server10" + x + @"\WebSite" + "\\" + serviceName);
}
else
{
serviceNameArray.Add(@"\\Server1" + x + @"\WebSite" + "\\" + serviceName);
}
}
List<List<string>> ultimateList = new List<List<string>>();
List<int> numList = new List<int>();
//Call the Search method

for (int y = 0; y < 2; y++)
{
ultimateList.Add(Search(serviceNameArray[y]));
}
for (int z = 0; z < 2; z++)
{
numList.Add(ultimateList[z].Count);
}

//FInd the Last Write Time for all the files.
for (int xx = 0; xx < 2; xx++)
{
listOfDateTimes.Add(new List<DateTime>());
for (int yy = 0; yy < numList[xx]; yy++)
{
listOfDateTimes[xx].Add(File.GetLastWriteTime(ultimateList[xx][yy]));
}
}
    DataTable dtForGridView = new DataTable();
    DataColumn dc1 = new DataColumn("File Name", typeof(string));
    DataColumn dc2 = new DataColumn("LastAccessTimeForServer1", typeof(DateTime));
    DataColumn dc3 = new DataColumn("LastAccessTimeForServer2", typeof(DateTime));
    dtForGridView.Columns.Add(dc1);
    dtForGridView.Columns.Add(dc2);
    dtForGridView.Columns.Add(dc3);

    for (int k = 0; k <=2; k++)
    {
    for (int d = 0; d < numList[k]; d++)//numList[k] will give the number of rows in each column
    {
    dtForGridView.Rows.Add(ultimateList[d][k], listOfDateTimes[k]);
    }
    }
    //Binding the GridView
    GridView1.DataSource = dtForGridView;
    GridView1.DataBind();

最终网格应如下所示:

FileName    LastAccessTimeForServer1          LastAccessTimeForServer1
a.txt        Time1                             Time2
b.txt        Time3                             Time4

专家请帮助找到解决方案。 任何指针都将受到高度赞赏。

此致

阿努拉格

0 个答案:

没有答案