Hola a todos.

Para los que no lo conocen, Linq To SharePoint nos permite conectar directamente a Listas de SharePoint, mediante un fichero con el nombre de nuesta lista «NombreLista.cs». Esto nos permite interactuar fácilmente con la lista, realizar consultas a los registros y acceder de una forma simple a los campos.

El problema con el que me he encontrado es que, Linq To Sharepoint» no enlaza los campos de tipo «Publishing Image» directamente y… nos tocará hacerlo a mano.

Los primero es identificar la clase «NombreListaItem» dentro del fichero «NombreLista.cs». En ella, se encuentran como propiedades las columnas de nuestra lista y, sólo deberemos añadir el siguiente código por cada una de los campos de tipo «Publishing Image» que hayamos añadido y sustituir los correspondientes nombres

    [System.Runtime.Serialization.DataMemberAttribute()]
    private Microsoft.SharePoint.Publishing.Fields.ImageFieldValue _myimage;

    [Microsoft.SharePoint.Linq.ColumnAttribute(Name = "MyImage", Storage = "_myimage", FieldType = "Image")]
    public Microsoft.SharePoint.Publishing.Fields.ImageFieldValue MyImage
    {  
        get 
        {
            return _myimage;
        }
        set
        {
            if (value != this._myimage)
            {
                this.OnPropertyChanging("MyImage", _myimage);
                this._myimage= value;
                this.OnPropertyChanged("MyImage");
            }
        }
    }