Para obtener los perfiles de usuario de SharePoint Server utilizamos la clase UserPofileManager y en 2007 pasábamos una instancia de la clase ServerContext que representaba los servicios compartidos de SharePoint 2007 o SSP. Pero en 2010 ya no existe mas SSP ahora cada servicio es independiente del otro y esto también afecta la forma en que escribimos el código en 2010.
Ahora cuando deseamos utilizar la clase ServerContext en 2010 a través de el ensamblado Microsoft.Office.Server.dll nos muestra la imagen de abajo::
Y cuando la pasamos al UserProfileManager también nos previene que ya es una sentencia obsoleta.
Y nos indica que utilicemos la clase SPServiceContext.
Entonces la nueva forma de hacerlo no varía mucho de la anterior pero si tiene un impacto importante en los recursos utilizados y en el tiempo que demorará la solicitud de nuestro código.
Ejemplo completo de la forma en que se hacía en 2007 :
La nueva forma de hacerlo sería la siguiente:
PropertyConstants es una clase que nos permite acceder los campos de los perfiles de usuario no importante el lenguaje con que esta instalado SharePoint y esta disponible en ambas versiones y es mejor utilizarla en vez de utilizar un string que varía de versión del lenguaje en que esta instalado SharePoint, ya que en inglés sería “WorkEmail” y en español “Correo del Trabajo”, por ejemplo.
La recomendación será que nuevos desarrollos o en los cambios que necesitemos hacer vayamos migrando el código dejando de utilizar ServerContext y ahora utilizar SPServiceContext.
Hasta la próxima!, SharePoint4Fun!,
Manolo Herrera