Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.Net C-数据列表不够复杂-从辅助表添加项数据_C#_Datalist - Fatal编程技术网

C# ASP.Net C-数据列表不够复杂-从辅助表添加项数据

C# ASP.Net C-数据列表不够复杂-从辅助表添加项数据,c#,datalist,C#,Datalist,我有一个datalist,它是从一个数据库表生成的,查询如下 SELECT Product_Type, Unit_Type, Image FROM Products WHERE ProductID = 1 Or ProductID = 2 OR ProductID = 3... etc. 我想为datalist中的每个项目显示一个饼图,这些项目依赖于图表的另一个表中的数据。此辅助表中的数据也可以使用ProductID进行选择 我的问题是datalist似乎是从一个SELECT运行到一个表。是否

我有一个datalist,它是从一个数据库表生成的,查询如下

SELECT Product_Type, Unit_Type, Image FROM Products WHERE ProductID = 1 Or ProductID = 2 OR ProductID = 3... etc.
我想为datalist中的每个项目显示一个饼图,这些项目依赖于图表的另一个表中的数据。此辅助表中的数据也可以使用ProductID进行选择


我的问题是datalist似乎是从一个SELECT运行到一个表。是否有一种方法可以指导datalist从辅助表中检索datalist中每个项目的补充数据?

我认为您需要了解如何联接表,下面是一篇文章,让您开始:

下面是一个简单的连接示例,用于获取有关产品的更多信息。我们确实不太了解包含其他数据的表,但希望这能让您开始。在本例中,您可以看到如何基于prodcut sales表中的外键获取销售金额:

CREATE TABLE #product
(
    productId INT PRIMARY KEY,
    description VARCHAR(50) NOT NULL    
)

CREATE TABLE #productSales
(
    salesId INT PRIMARY KEY,
    productId INT NOT NULL,
    amount INT NOT NULL    
)

INSERT INTO #product VALUES(1, 'Boat')
INSERT INTO #product VALUES(2, 'Raft')
INSERT INTO #product VALUES(3, 'Canoe')

INSERT INTO #productSales VALUES(1, 1, 10)
INSERT INTO #productSales VALUES(2, 1, 89)
INSERT INTO #productSales VALUES(3, 2, 410)
INSERT INTO #productSales VALUES(4, 2, 10997)
INSERT INTO #productSales VALUES(5, 2, 3)
INSERT INTO #productSales VALUES(6, 2, 98)
INSERT INTO #productSales VALUES(7, 3, 14)

SELECT p.productId, p.description, ps.amount from #product p 
    INNER JOIN #productSales ps on 
     p.productId = ps.productId
WHERE p.productId IN (1,2,3)
输出:

1   Boat    10
1   Boat    89
2   Raft    410
2   Raft    10997
2   Raft    3
2   Raft    98
3   Canoe   14

您需要使用联接来组合多个表。@jdweng,问题是当我的主选择询问ProductID=1或ProductID=2或ProductID=3的位置时,如何为ProductID=1创建饼图(例如数据列表项)。。。?这就像我需要为每个项目选择一个子项。你需要一个连接,然后是一个组来获得每个项目的计数。