2011-05-15 87 views
0

我有一个listview与objectdatasource绑定。我从URL获取参数。对象数据源从两个表中获取值?

在数据库中。我有两张桌子。 第一个表格包含每行不明的。离

pkey Name Text 

1的XYZ

2 B ZZZ

但在第二表将具有表第一foreing键,因此该值将

pkey FKey value 

1 1 /图像/ 1.jpg

2 1 /image/2.jpg

3 2 /image/z.jpg

4 2 /image/a.jpg

现在对于本soultion应该我有两个列表视图?? 1st tableview for 1st table and 2nd for 2nd table ???

请指导我???

+0

你在使用什么数据访问层? Linq to SQL?您的对象中的普通旧ADO.NET? – 2011-05-15 17:36:07

回答

0

使用linq对象,您可以在表上执行联接,为您提供在单个对象中查找的所有数据。然后可以将其放入一个列表视图。

var dat = from x in Context.Table_1 
       join y in Context.Table_2 on x.pkey equals y.fkey 
       select new 
       { 
        Name = x.Name, 
        Text = x.Text, 
        Value = y.value 
       }; 
1

如果你只是使用,使用普通的旧ADO.NET调用数据库类,您可以直接在SQL语句中的连接,也可以创建在加入基于该表的数据库视图主键/外键值并返回单个结果集,然后查询视图。如果您使用ORM,则可以使用Linq(假定ORM具有Linq提供程序)来执行连接或映射视图并分别查询它。

+0

如果我将两个表连接到数据集中,那么我将在数据集中返回两行。假设我为表1传递'1',那么它将从第一个表中获取行并加入第二个表,然后我将从第二个表中获得两行...正确的? – 2011-05-15 17:45:11