首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

ToTable方法,列不属于基础表,咋回事

2012-12-20 
ToTable方法,列不属于基础表,怎么回事?代码:Dim Sb As StringBuilder New StringBuilder(Select NAME,O

ToTable方法,列不属于基础表,怎么回事?
代码:
      Dim Sb As StringBuilder = New StringBuilder("Select NAME,OL_NBR,SO_DATE,ORDER_CODE,CUST_NAME,ACC_NBR,ADDR_NAME,CONTACT_NAME,CONTACT_NBR,ORDER_STATE from  V_dl_Lottory ")
        'Response.Write(Sb.ToString())
        'Response.End()
        Dim Cn As OleDbConnection = New OleDbConnection(StrCon)
        Dim Da As OleDbDataAdapter = New OleDbDataAdapter(Sb.ToString(), Cn)
        Dim Ds As DataSet = New DataSet()
        Cn.Open()
        Da.Fill(Ds, "Res")
        Cn.Close()
        Dim Dt As DataTable = Ds.Tables.Add("View")
        Dt = Ds.Tables("Res").DefaultView.ToTable(True, "NAME,OL_NBR,SO_DATE,ORDER_CODE,CUST_NAME,ACC_NBR,ADDR_NAME,CONTACT_NAME,CONTACT_NBR,ORDER_STATE")
        GridView1.DataSource = Ds.Tables("View").DefaultView
        GridView1.DataBind()

结果报错:列“NAME,OL_NBR,SO_DATE,ORDER_CODE,CUST_NAME,ACC_NBR,ADDR_NAME,CONTACT_NAME,CONTACT_NBR,ORDER_STATE”不属于基础表“Res”。 

[最优解释]
ToTable方法后面的参数必须是原DataTable里存在的列名,你必须写成Dt = Ds.Tables("Res").DefaultView.ToTable(True, "列名1","列名2","列名n");这种形式,即一个列名对应一个字符串。
[其他解释]
人家需要数组,你那个不行,好好看看帮助


DataTable newTable = view.ToTable(true, "Category", "QuantityInStock");

热点排行