Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
|
sp:wcf [2009/03/05 16:01] alfred |
sp:wcf [2020/05/09 09:25] (actual) |
||
|---|---|---|---|
| Línea 429: | Línea 429: | ||
| </code> | </code> | ||
| ===== Otros ===== | ===== Otros ===== | ||
| - | ==== Activar la compativilidad con ASP.NET ==== | + | |
| + | |||
| + | |||
| + | |||
| + | ==== Activar la compatibilidad con ASP.NET ==== | ||
| + | A veces necesitamos guardar información del usuario en, por ejemplo, sesiones, pero por defecto no lo podemos hacer simplemente accediendo a ''System.Web.HttpContext.Current.Session''. Para poder acceder al contexto web desde un servicio de WCF deberemos hacer dos cosas: | ||
| + | * Activar la compatibilidad desde el archivo de configuración: | ||
| + | <code xml> | ||
| + | <system.serviceModel> | ||
| + | <serviceHostingEnvironment aspNetCompatibilityEnabled="true" /> | ||
| + | ... | ||
| + | </code> | ||
| + | * Agregar el atributo ''AspNetCompatibilityRequeriments'' a la clase del servicio (como ''Allowed''): | ||
| + | <code csharp> | ||
| + | [System.ServiceModel.Activation.AspNetCompatibilityRequirements(RequirementsMode = System.ServiceModel.Activation.AspNetCompatibilityRequirementsMode.Allowed)] | ||
| + | public class PiuService : ISAMERWService { | ||
| + | ... | ||
| + | </code> | ||
| Línea 440: | Línea 458: | ||
| ... | ... | ||
| </code> | </code> | ||
| - | * Para cambiar el usuario con el que se ejecuta el servicio en IIS deberemos [[sp:wcf#activar_la_compativilidad_con_asp.net|activar la compativilidad con asp.net]]. | + | * Para cambiar el usuario con el que se ejecuta el servicio en IIS deberemos [[sp:wcf#activar_la_compatibilidad_con_asp.net|activar la compatibilidad con asp.net]]. |
| + | * Con la instalación de Visual Studio se nos instala una herramienta denominada //Microsoft Service Configuration Editor//, muy útil para editar de una forma clara los archivos de configuración de un proyecto que involucren servicios. Podemos acceder desde //Inicio -> Programas -> SDK -> Tools//. | ||
| ==== IIS ==== | ==== IIS ==== | ||