Ver Mensaje Individual
  #12 (permalink)  
Antiguo 16/06/2005, 12:49
Avatar de Neuron_376
Neuron_376
 
Fecha de Ingreso: abril-2005
Mensajes: 1.051
Antigüedad: 20 años
Puntos: 2
La teoría resulto correcta...

Hice este script sencillo para probar, y resulta que si, el SET es obligatorio, nunca lo habia probado hacer sin SET, por otra parte, al parecer todo comparte el mismo espacio de memoria, es como un apuntador a lo mismo, entonces si aplicas un remove a un elemento, se hace a todos.

Espero que les sirva a ustedes que estás usando objDict mucho en sus páginas.

Cita:

Dim objDict
Dim objTemp
Dim varElemento

'Crear el objeto para guardar las fotografías.
set objDict = CreateObject("Scripting.Dictionary")

objDict.Add "intVar1", 1
objDict.Add "intVar2", 2
objDict.Add "intVar3", 3

set Session("objDictS") = objDict

Response.Write "Inicializados: <br><br>"

Response.Write "Variable objDict: <br>"
For Each varElemento in objDict
Response.Write varElemento & " : "& objDict.Item(varElemento)& "<br>"
Next

Response.Write "<br>Session objDictS: <br>"
For Each varElemento in Session("objDictS")
Response.Write varElemento & " : "& Session("objDictS").Item(varElemento)& "<br>"
Next

Response.Write "<br><hr><br>"

Response.Write "Borrando usando set en una variable objTemp: <br><br>"
set objTemp = Session("objDictS")
objTemp.Remove("intVar2")

Response.Write "Variable objTemp: <br>"
For Each varElemento in objTemp
Response.Write varElemento & " : "& objTemp.Item(varElemento)& "<br>"
Next

Response.Write "<br>Variable objDict: <br>"
For Each varElemento in objDict
Response.Write varElemento & " : "& objTemp.Item(varElemento)& "<br>"
Next

Response.Write "<br>Session: <br>"
For Each varElemento in Session("objDictS")
Response.Write varElemento & " : "& Session("objDictS").Item(varElemento)& "<br>"
Next

Response.Write "<br><hr><br>"

Response.Write "Borrando directo en el objeto de memoria: <br><br>"
Session("objDictS").Remove("intVar1")

Response.Write "Variable objTemp: <br>"
For Each varElemento in objTemp
Response.Write varElemento & " : "& objTemp.Item(varElemento)& "<br>"
Next

Response.Write "<br>Variable objDict: <br>"
For Each varElemento in objDict
Response.Write varElemento & " : "& objTemp.Item(varElemento)& "<br>"
Next

Response.Write "<br>Session: <br>"
For Each varElemento in Session("objDictS")
Response.Write varElemento & " : "& Session("objDictS").Item(varElemento)& "<br>"
Next
Suerte!!
__________________
NeuronaNet.com... la idea correcta.
http://www.NeuronaNet.com