如果DataTable中gid列 包含数据
 6,9,10,12,13,19则DataTable中DDName 
显示为“-”,用C#怎么写呢DataTableC# 

解决方案 »

  1.   

    List<int> list=new List<int> (){6,9,10,12,13,19};
                    DataTable dt = CreateDataTable();
                    dt=dt.AsEnumerable().Select(a =>
                    {
                        if (list.Contains(a.Field<int>("gid")))
                        {
                            a.SetField<string>("DDName", "-");
                        }
                        return a;
                    }).CopyToDataTable();
      

  2.   

    o(∩_∩)o...哈哈!!!只要一句代码就行了:dt.Select("gid IN (6,9,10,12,13,19)").ToList().ForEach(x => x["DDName"] = "-");
      

  3.   

    因为DataTable是引用类型所以,调用完Change后。
    dt即为你要的对果。public void Change(DataTable  dt)
    {
      DataRow[] drs=dt.Select("gid in (6,9,10,12,13,19)");  foreach(DataRow dr in drs)
      {
        dr["DDName"]="-";
      }
    }
      

  4.   

    高手,用了一年DataTable 第一次见还能这样用,牛啊
      

  5.   

    public void Change(DataTable  dt)
    {
      DataRow[] drs=dt.Select("gid in (6,9,10,12,13,19)");  foreach(DataRow dr in drs)
      {
        dr["DDName"]="-";
      }
    }