从DB中查询出来的DataSet赋给GridView
如果DB中的某一列是字典表,而我查询出来是只是Code
但是我要在GridView中显示Name
(注:Code和Name组成字典表)
怎么办???
救命~~~~~

解决方案 »

  1.   

    ......ID,NAME,(select text from syscode where code=XXXTABLE.XIAN) as XXXText,"......
      

  2.   

                  String sql = "select ID, DM,(select text from s_syscode " +
                "where b.TYPE=code) as TypeText, " +
              "(select text from s_syscode where b.DJ=code) as DjText," +
               "(select text from s_syscode where b.SHI=code) as ShiText," +
                "(select text from s_syscode where b.XIAN=code) as XianText," +
                "(select XM from B_BGRINFO where b.BGR=ID) as BgrName," +
                " TYPE,DJ,TFH,JZDW,JZRQ,ZDSX,ZDMJ,WGZDLX,ZBLX,ZBG,BSLX,BSKS,BSZL,BZZL,ZBXZ,BSXZ,SHENG,SHI,XIAN,XIANG,CUN,ZU,TGDW,TGDWDZ,TGDWDB,ZRBM,TGDWDH,TGRQ,BGDW,ZRR,BGDWDH,BDJTQK,XDDW,XDY,XDRQ,MSDW,MSY,MSRQ,LYJDQK,TXDZ,BZ,JD,WD,WZQK from B_POINTINFO b where 1=1";我项目里的,获取数据字典表TEXT字段
      

  3.   

    自己先顶一个~~·
    我不想在SQl语句中控制
    而想在查出结果之后在控制~~~
      

  4.   

    如果我要在Code_behind中控制呢~~~~
      

  5.   

    在写sql的时候就用Inner join On 把两个表连一起查,把name列出来就成了~~
      

  6.   

    能在sql里面做为什么要在gridview来做
      

  7.   

    9楼这种方法是可行的,你绑定的时候,直接绑定name字段就行了或者还有一种办法,是在GridView绑定时发生的,把代码写在GridView的RowDataBound事件里,如下:    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                string code = DataBinder.Eval(e.Row.DataItem, "Code").ToString();
                //再根据上面得到的code从字典表里查出相对应的name
                string name = 得到的值;
                //接着对单元格内容进行赋值(假设你要转换的单元格是处于第3格:编号是从零开始的)
                e.Row.Cells[2].Text = name;
            }
        }
      

  8.   

    我理解楼主的意思。如果在多层架构下,一般得到的是一个表的数据。然后你写CS的时候通过调用方法得到了两张分离的表,因为数据层不是自己写的!很少会用到inner join这东东