He usado un puente ajax (a falta de un término mejor), específicamente, una página asp clásica que lee todas las sesiones en una base de datos con un guid, luego redirige a una página .net pasando el guid en la cadena de consulta, la página asp.net lee de sql para el guid dado y creó esos vars como sesiones.
Por ejemplo, en ASP clásico (código de pseudo - sólo para darles una idea, utilizar consultas parametrizadas en el suyo, etc.):
'#### Create GUID
Dim GUID 'as string
GUID = CreateWindowsGUID() '#### Lots of methods on http://support.microsoft.com/kb/320375
'#### Save session to sql
For Each SessionVar In Session.Contents
db.execute("INSERT INTO SessionBridge (GUID, Key, Value) VALUES ('" & GUID & "', '" & SessionVar & "', '" & session(SessionVar) & "')")
Next
Luego, en una página .net:
'#### Fetch GUID
Dim GUID as string = Request.QueryString("GUID")
session.clear
'#### Fetch from SQL
db.execute(RS, "SELECT * FROM SessionBridge WHERE GUID = '" & GUID & "'")
For Each db_row as datarow in RS.rows
Session(db_row("Key")) = db_row("Value")
Next
Como digo, este es un pseudocódigo muy tosco, pero puede llamar al asp con una simple función de fondo ajax, luego llamar a la página .net para el GUID dado.
Esto tiene la ventaja de no exponer todos sus vars y valores al cliente (como lo hacen los métodos de publicación, etc.).
Debería haber terminado para el final de esta semana con la solución que mejor se adapta a nuestras necesidades. También mencionaré algunos otros métodos. Manténgase informado – PsychoDUCK