C# 在gridView中显示多值属性

C# 在gridView中显示多值属性,c#,asp.net,gridview,C#,Asp.net,Gridview,我有一个桌面学生电话,看起来如下所示: 电话学生 2345678 1 0562436720 1 2254754 2 0546218611 2 我希望使用sqlDataSource select query在gridView中显示其数据,如下所示: 从studentPhone中选择电话,其中studentID位于1中 但是gridView只显示指定studentID的第一个电话。我如何解决这个问题以显示特定ID的所有手机 SELECT phone, studentID

我有一个桌面学生电话,看起来如下所示:

电话学生 2345678 1 0562436720 1 2254754 2 0546218611 2 我希望使用sqlDataSource select query在gridView中显示其数据,如下所示:

从studentPhone中选择电话,其中studentID位于1中 但是gridView只显示指定studentID的第一个电话。我如何解决这个问题以显示特定ID的所有手机

SELECT phone, studentID FROM studentPhone WHERE (studentID = 1 )
如果要在一列中显示一个ID的所有电话号码,则必须编写存储过程。 例如:


这将返回给定ID的所有电话号码的逗号分隔列表。

您希望gridview在同一列中以逗号分隔显示1个ID的两条记录。ID为1的exp 2345678056436720?
create table test1
( phone varchar(30),
   id int )

insert into test1(phone,id) values('2345678',1)
insert into test1(phone,id) values('0562436720',1)

Create Procedure getStudentsByID
@ID
AS
BEGIN
declare @test varchar(max)

select @test = ISNULL(@test+',','')+  test1.phone from test1 where test1.id = @ID
select @test