2011-05-26 40 views
0

我们正在使用.net 1,我知道我们应该切换到高位,但不是我手中的 。 我想显示从存储proc &放入数据表中返回列的unque值。列的其余部分需要显示所有值。.net 1-从数据表/数据视图中获取列的不整齐值

我谷歌搜索,发现下面哪个似乎不工作在这个版本, 新DataView(myTable).ToTable(真,新字符串[] {“通道”});

我们有没有其他简单的方法。我不喜欢用for循环遍历所有的值并放入arraylist中。

我的代码是如下面=

cmd = New SqlCommand("web_RetrieveClient", conn) 
    cmd.CommandType = CommandType.StoredProcedure 

    param = cmd.Parameters.Add("@ClientKey", SqlDbType.Int, 4) 
    param.Value = lClientKey 
    param.Direction = ParameterDirection.Input 

    adapter.SelectCommand = cmd![enter image description here][1] 
    adapter.Fill(dt) 
    conn.Close() 

请参见在图像PROC的结果的数据。 我需要独特的channelids。

感谢您的帮助提前。 navya

回答

0

在.NET 1.1中,您的选项是有限的。 for循环到数组列表可能是您唯一的选择,因为我不认为DataView可以执行DISTINCT。

为什么你不能重写存储过程?

+0

感谢Broam 。 实际上相同的proc为整个页面提供数据,并且此通道ID进入下拉列表,该选择将控制列视图的其余部分。 你是什么样的重新写你的意思? 在数据库层面有点麻烦......在数据库中没有太多控制权。 – navya 2011-05-26 18:38:08

0

做到这将是最快的方式:

  • 复制存储过程
  • 在新的存储过程中的选择
  • 呼叫使用DISTINCT新的存储过程
+0

不幸的是我不能改写其他产品使用的proc。 – navya 2011-05-26 19:03:53

+0

是的,这就是为什么你应该创建一个副本,原来将继续被其他产品使用 – 2011-05-26 19:15:54