WebService compatilidad .net framework 2.0 con 4.0
-
miércoles, 07 de marzo de 2012 17:27
Buenas,
tengo un Servicio Web en .net framework 2.0, y una aplicacion windows la cual se conecta a este servicio en .net framework 4.0.
El servicio web tiene un metodo iniciarsesion(usuario,contrasena) el cual asigna valores a un objeto Session y tiene la propiedad [WebMethod(EnableSession=true)] para cada uno de los restantes metodos, tengo otro metodo llamado DescargarPreferencia() {donde se verifica que la session este iniciada y retorna ciertos valores}.
El caso es que mi aplicacion windows .net 4.0, invoca el metodo del servicio iniciarsesion (usando el CookieContainer()) perfectamente, luego sucesivamente inoco el metodo descargarpreferencia() el cual ya no tiene valor en la session.
Este es un ejemplo del codigo de una aplicacion consola 4.0 la cual no me funciona (pero si lo hago en 2.0 si funciona perfectamente)
La pregunta es si existe incopatibilidad con el .net 4.0 con el .net 2.0 para mantener las sesiones?
static void Main(string[] args) { //1.- Instancio el Servicio Orinoco.ServicioReembolso servicio = new Orinoco.ServicioReembolso(); //2.- Creo mis variables Orinoco.ResultadoOperacionConValorOfUsuarioAfiliado resultadoIniciarSesion = new Orinoco.ResultadoOperacionConValorOfUsuarioAfiliado(); Orinoco.ResultadoOperacionConValorOfConfiguracion resultadocargarPrefererncias = new Orinoco.ResultadoOperacionConValorOfConfiguracion(); Orinoco.Configuracion conf = new Orinoco.Configuracion(); //3.- Seteo un cookie container para poder iniciar sesión en el servicio web System.Net.CookieContainer galletita = new CookieContainer(); servicio.CookieContainer = galletita; //4.- se llama al metodo iniciar sesion resultadoIniciarSesion = servicio.IniciarSesion("farmatodo", "a123456", 333); Console.WriteLine("=============1.- Iniciando sesion============"); Console.WriteLine(resultadoIniciarSesion.Estatus.ToString()); Console.ReadLine(); //5.-Se llama al método Cargar Preferencias Console.WriteLine("=============2.- Grabar cabecera============="); resultadocargarPrefererncias = servicio.CargarPreferencias(); Console.WriteLine(resultadocargarPrefererncias.Valor.AfiliadoCodigo.ToString()); Console.WriteLine(resultadocargarPrefererncias.Valor.AfiliadoRIF.ToString()); Console.WriteLine(resultadocargarPrefererncias.Valor.AfiliadoRS.ToString()); Console.WriteLine(resultadocargarPrefererncias.Valor.ArchivoDatosExportacionEncriptar.ToString()); Console.WriteLine(resultadocargarPrefererncias.Valor.ArchivoDatosExportacionExt.ToString()); Console.WriteLine(resultadocargarPrefererncias.Valor.ExportarArchivoAutomatico.ToString()); Console.ReadLine(); }
gracias
Todas las respuestas
-
miércoles, 07 de marzo de 2012 17:37Moderador
para que usas estas lineas
System.Net.CookieContainer galletita = new CookieContainer(); servicio.CookieContainer = galletita;
hast donde se no necesitas definri la cookie para que el servicio mantenga al session si es que habilitas [WebMethod(EnableSession=true)]
que sucede si quitas esa linea ?
-------
ademas porque no haces
Orinoco.ResultadoOperacionConValorOfUsuarioAfiliado resultadoIniciarSesion = servicio.IniciarSesion("farmatodo", "a123456", 333);
digo declaras la variable de resultado en la lisma linea, en lugar de ponerla por separado
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Propuesto como respuesta Eduardo PorteschellerMicrosoft Community Contributor, Moderator viernes, 09 de marzo de 2012 12:49
- Marcado como respuesta Eder CostaOwner martes, 03 de abril de 2012 15:04
-
miércoles, 07 de marzo de 2012 17:56
Si quito la linea, no hay diferencia y por la asignacion de variables no hay problema, como explique anteriormente este código en .net framework 2.0 funciona perfecto!, el problema es en 4.0
gracias Leandro
-
miércoles, 07 de marzo de 2012 18:07Moderador
me suena raro que sea .net 4 el del problema
no conozco impoatibilidad entre estos, menos si se trata de un web service
la invocacion mas alla de la session se realiza sin error alguno ? o sea el servicio cuando lo invocas y le passas usuario y password no genera ningun problema ?
esto en que ambiente lo realizas, esta todo en el VS cuando ejecutas o se produce cuando lo llevas a produccion y hces el deploy de cada parte ?
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Propuesto como respuesta Eduardo PorteschellerMicrosoft Community Contributor, Moderator viernes, 09 de marzo de 2012 12:49
- Marcado como respuesta Eder CostaOwner martes, 03 de abril de 2012 15:04

