Hace unos días, al intentar desplegar desde Visual Studio una Feature que tenía un EventReceiver, me encontré con el siguiente error:

Curiosamente, el proyecto, era casi una copia de otro proyecto en el que todo estaba funcionando bien ¿?
Probé a activar la Feature desde el propio SharePoint, y me dio un agradable “Correlation ID” con una pantallazo de error. Cuando seguí ese ID en el Log, me encontré una descripción del error que no me sirvió de mucho:
Exception: System.InvalidOperationException: Operation is not valid due to the current state of the object
Decidí revisar el Event Viewer, en busca de alguna pista más, y me encontré un error con Event ID: 6644

Tirando de MS, encontré la explicación al 6644 aquí:
http://technet.microsoft.com/en-us/library/ff382635.aspx
Donde la causa más probable del error era:
The custom event receiver assembly cannot be found, or it is corrupted.
Pero en mi caso, el assembly era mío, estaba bien referenciado, aparecía en la GAC, y estaba tan recompilado, que si estaba corrupto sería de eso 
Por cierto, si le cambiáis el nombre al EventReceiver que os crea Visual Studio, revisar el Elements.xml, ya que no lo actualiza, y luego os fallará porque no encuentra la DLL
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Receivers ListTemplateId="850">
<Receiver>
<Name>MyCustomEventReceiverItemCheckedIn</Name>
<Type>ItemCheckedIn</Type>
<Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>
<Class>Encamina.Sharepoint.Project.EventHandler</Class>
<SequenceNumber>10000</SequenceNumber>
</Receiver>
</Receivers>
</Elements>
Siguiendo con el error, después de revisar todas las DLLs del proyecto, asegurarme que estaban en la GAC, y desinstalar e instalar la feature varias veces, me di cuenta que una de las DLLs del proyecto, no estaba incluida en el paquete de la solución. Sin embargo, no me daba el error concreto de que no encontraba la DLL, ya que esa DLL, sí que estaba en la GAC, de otro despliegue anterior, pero por algún extraño motivo, algo se había quedado corrupto, y no era capaz de cargarla.
Finalmente, eliminé la DLL de la GAC, la agregué en el diseñador del paquete:

Y al desplegar de nuevo, todo funcionó correctamente!
Espero que le ahorre tiempo a alguien.
Saludos!!!
Ayer, haciendo algunas pruebas de despliegue en un entorno de Staging, nos dimos cuenta que al intentar descargar un PDF, que residía en una biblioteca de SharePoint 2010, en el típico diálogo de descarga, no aparecía el botón de “abrir”, tan sólo permitía el Guardar y Cancelar.
Pues bien, os paso enlace al blog de mi compañero Albert, donde explica el porqué y cómo solucionar esta novedad de SharePoint 2010 
http://businessandit.net/2011/02/abrir-pdfs-alojados-en-sharepoint-directamente-en-el-navegador-web/
Saludos!!
Como ya habréis visto en el blog de Alberto Díaz, hace unos días tuve la suerte de participar en la SharePoint Camp de Madrid, junto a mi compañero Francisco Villar.
Fue una experiencia indescriptible poder compartir conocimientos con varios de los mejores expertos de SharePoint, todos ellos dirigidos por el maestro Gustavo Velez, y el gran Juan Carlos González
Por no repetir el post de Alberto, donde podéis encontrar toda la información sobre el evento, yo os contaré qué hemos presentado para participar en la POC.
La solución presentada por ENCAMINA, se basa en una característica de Sharepoint 2010, que realiza la traducción automática de las páginas de contenido de un portal de publicación, utilizando varios proveedores de traducción (Bing, Google, Salt).
Además, es una solución basada en Windows Azure, donde un WCF Role, recibe las peticiones de traducción, y realiza la traducción con el proveedor deseado.
Si tenéis curiosidad en saber algo más, podéis visitar la web del producto TRAMAT, que es como lo hemos bautizado
Si os interesa, estad atentos a la web, porque en breve vamos a añadir algo más de información, y un video ejemplo.
Nada más, aprovecho el post para agradecer la invitación a Juan Carlos, y la participación al resto de cracks.
Y la foto final del equipo, eso sí lo voy a repetir del blog de Alberto:

PD: como habréis adivinado, yo soy el del casco y la pistola…