DataView To Datatable

 

* 在.net2.0中DataView类有相应的方法实现此功能。

代码
public   static  DataTable CreateTable(DataView obDataView)
        {
            
if  ( null   ==  obDataView)
            {
                
throw   new  ArgumentNullException
                    (
" DataView " " Invalid DataView object specified " );
            }

            DataTable obNewDt 
=  obDataView.Table.Clone();
            
int  idx  =   0 ;
            
string  [] strColNames  =   new   string [obNewDt.Columns.Count];
            
foreach  (DataColumn col  in  obNewDt.Columns)
            {
                strColNames[idx
++ =  col.ColumnName;
            }

            IEnumerator viewEnumerator 
=  obDataView.GetEnumerator();
            
while  (viewEnumerator.MoveNext())
            {
                DataRowView drv 
=  (DataRowView)viewEnumerator.Current;
                DataRow dr 
=  obNewDt.NewRow();
                
try
                {
                    
foreach  ( string  strName  in  strColNames)
                    {
                        dr[strName] 
=  drv[strName];
                    }
                }
                
catch  (Exception ex)
                {
                    Trace.WriteLine(ex.Message);
                }
                obNewDt.Rows.Add(dr);
            }

            
return  obNewDt;
        }                    

 

 

你可能感兴趣的:(Datatable)