Felmeddelandet är ganska tydligt?
Nyckeln du försöker lägga till finns redan i dictionaryobjektet. För att lägga till bara unika värden, antingen ställ en SELECT DISTINCT-fråga istället, eller kontrollera att inte nyckeln redan är använd.
6 svar · 531 visningar · startad av Fraggel
groupID är Key i tabellen menuGroup.
Dim objConn,objRs,SQL
Set objConn = Server.CreateObject("ADODB.Connection")
Set objRs = Server.CreateObject("ADODB.RecordSet")
Dim objD
Set objD = Server.CreateObject("Scripting.Dictionary")
SQL = "SELECT * FROM menuGroup"
objConn.Open strDatabase
objRs.Open SQL,objConn
While NOT objRs.EOF
objD.Add objRs("groupID"),objRs("groupText") '*****RAD 90*****
objRs.MoveNext
Wend
Detta ger fel:
Technical Information (for support personnel)
Error Type:
Microsoft VBScript runtime (0x800A01C9)
This key is already associated with an element of this collection
/artlog/config.asp, line 90
Browser Type:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Page:
GET /artlog/Default.asp
Time:
den 13 februari 2005, 15:21:43
More information:
Microsoft Support
Felmeddelandet är ganska tydligt?
Nyckeln du försöker lägga till finns redan i dictionaryobjektet. För att lägga till bara unika värden, antingen ställ en SELECT DISTINCT-fråga istället, eller kontrollera att inte nyckeln redan är använd.
Den var inte använd...
Problemet var
objD.Add objRs("groupID"),objRs("groupText")
Löste det:
Dim strTMP1,strTMP2
strTMP1 = objRs("groupID")
strTMP2 = objRs("groupText")
objD.Add strTMP1,strTMP2
Hmmm... Vad menar du att problemet var alltså?
Hmm editerad mitt inlägg lite :)
Fixat !!!
Vänner :bire ???