kann ich Ihnen eine einfache SQL-Abfrage geben, was Sie dies wollen, wie zurückkehren wird:
SELECT name, price FROM [product] WHERE ProdID IN (3,16,12)
aber es sicher zu tun und effizient ist es am besten zu wissen, welche Art von db Sie haben und wo diese Zeichenfolge von IDs kommt (wie es gebaut wird).
Basierend auf Ihren Kommentar, es klingt wie Sie die Sitzung verwenden (und ein ArrayList- igitt. Es sei denn, Sie immer noch auf .Net sind 1,1 sie sind böse) als Warenkorb. Was Sie stattdessen tun möchten, ist dies in die Datenbank zu verschieben. Anstatt jedes Einkaufswagenelement in die Sitzung zu setzen, muss eine db-Tabelle vorhanden sein und jedes Mal, wenn der Benutzer ein Element auswählt, dieses Element zur Einkaufswagen-Tabelle hinzufügen. Dann wird Ihre SQL-Abfrage wie folgt aussehen:
SELECT name, price
FROM [product]
WHERE ProdID IN
SELECT ProdID
FROM [ShoppingCart]
WHERE CartSession= @CurrentSessionID
ok, ich habe eine Gridview, die Elemente anzeigt, wenn der Benutzer den Button 'in den Warenkorb' klickt. Einmal angeklickt wird die ItemID des Items in eine Arraylist gelegt und in der Session gehalten. , woraufhin der Benutzer auf die Warenkorbseite geleitet wird, wo beim Laden der Seite das ausgewählte Element in die Seitenansicht der Seiten eingefügt wird. Danach sende ich die Werte von der Arraylist zu einem String getrennt durch Komma ',' und daher "3, 16, 12" der Name der Zeichenfolge, die die Werte enthält, ist ProductIDs. Ich habe es versucht, aber wie genau kann ich die Stringvariable der SQL-Abfrage zuweisen? danke – pier