Hay dos campos diferentes "Creado por", uno para todos los artículos y uno específicamente para bibliotecas de documentos ("Documento creado por"). El nombre interno para el campo "Creado por" es "Autor", por lo que <FieldRef Name='Author'/>
sería el mejor comienzo. El segundo campo, que es el autor del archivo real en una biblioteca de documentos, tiene un nombre interno de "Created_x0020_By". A juzgar por su escenario, tengo la sensación de que solo necesitará el primero, pero lo último es bueno saberlo de todos modos, porque los datos almacenados en ellos son diferentes.
"Creado por" es un campo de usuario, por lo que la versión de cadena de sus datos es ID;#Full Name
. Mientras tanto, "Documento creado por" es un campo de texto para una sola línea de texto, y sus datos se almacenan como el nombre de usuario real (con dominio, si corresponde). Así que su consulta anterior funcionaría en el caso de una biblioteca de documentos y buscando en <FieldRef Name='Created_x0020_By'/>
. Sin embargo, si desea buscar en el campo "Creado por", tendrá que ser un poco más complicado, pero debería poder lograrlo al hacer referencia a la ID de SharePoint del usuario. El siguiente es un ejemplo de una consulta de campo de usuario diferente que estoy usando, para comparar.
<Eq><FieldRef Name='AssignedTo' /><Value Type='Integer'><UserID Type='Integer' /></Value></Eq>
Esto filtró específicamente al usuario actual. Para usarlo para sus propósitos, reemplace 'AssignedTo' con 'Author' y <UserID Type='Integer' />
con el ID del usuario en cuestión.
Thanks. Tengo el primer escenario, que es tratar de consultar una lista simple por la columna Autor, que tiene solo un nombre de usuario. Logré crear un objeto SPUser e intenté tu consulta con "Author" y user.ID, pero recibo una excepción que dice "La conversión falló al convertir al valor nvarchar 'SomeFirstname SomeLastname' al tipo de datos int.", Donde "SomeFirstname SomeLastname" es un nombre de la lista que no es el nombre de usuario. Agradecería su ayuda :) – yellowblood
nvm, lo arregló. Al consultar la columna "Autor" por ID, debe agregar un atributo "LookupId = 'True'" a la etiqueta "FieldRef". ¡Trabajando, muchas gracias! – yellowblood