Usuario
Lectura de SPFieldBoolean de campo de lista yes/no en Sharepoint 2013

Pregunta
-
Buenos días Estimados, estoy realizando la lectura de una biblioteca de documentos en Sharepoint 2013, tengo un error que quisiera resolver:
con SPquery:
traigo el campo: <FieldRef Name=\"Visualizar_x0020_URL\"/>
SPQuery query = new SPQuery();
//Query para Obtener Contenido de la Biblioteca de acuerdo a los filtros
query.ViewFields = "<FieldRef Name=\"ID\"/><FieldRef Name=\"Activo\"/><FieldRef Name=\"Descripci_x00f3_n\"/><FieldRef Name=\"FileLeafRef\"/><FieldRef Name=\"Modified\"/><FieldRef Name=\"Visualizar_x0020_URL\"/><FieldRef Name=\"Url_x0020_de_x0020_P_x00e1_gina\"/>";
StringBuilder sbQuery = new StringBuilder();
sbQuery.Append("<Where><Eq><FieldRef Name=\"Activo\"/><Value Type=\"bit\">");
sbQuery.Append(1);
sbQuery.Append("</Value></Eq></Where>");
sbQuery.Append("<OrderBy><FieldRef Name=\"Orden\" Ascending=\"TRUE\" /></OrderBy>");
query.Query = sbQuery.ToString();
Para leer el campo uso el siguiente método:
SPFieldBoolean bo = spItem.Fields["Visualizar_x0020_URL"] as SPFieldBoolean;
item.verpagina = (bool)bo.GetFieldValue(spItem["Visualizar_x0020_URL"].ToString());Cuando ejecuta me sale el siguiente error, el campo está creado se llama "Visualizar URL":
No se encontró el campo con el nombre "Visualizar_x0020_URL".
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.ArgumentException: No se encontró el campo con el nombre "Visualizar_x0020_URL".
Source Error:An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:[ArgumentException: No se encontró el campo con el nombre "Visualizar_x0020_URL".] Microsoft.SharePoint.SPFieldCollection.GetFieldByDisplayName(String strDisplayName, Boolean bThrowException) +233 PoderosaUtilitarios.wfrmBanner.ObtenerImagenes(SPListItemCollection collection) +450 PoderosaUtilitarios.wfrmBanner.CargarBanner() +455 PoderosaUtilitarios.wfrmBanner.DisplayBanners() +71 System.Web.UI.Control.LoadRecursive() +71 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3178
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.19063Saludos
Muchas Gracias
Todas las respuestas
-
Hola,
La primera pregunta que te haría es sí el campo que está dando el error tiene ese nombre o es Visualizar_x020_URL.
Saludos
------------------------------------------------------------
Juan Carlos González Martín MVP de SharePoint Server
Director revista CompartiMOSS: http://www.compartimoss.com
Blog: http://geeks.ms/blogs/ciin
Twitter: @jcgm1978
------------------------------------------------------------ -
Buen día, cuando se crea en la lista el nombre es = "Visualizar URL"
para el SPquery busco el nombre como lo muestra Sharepoint ="Visualizar_x020_URL",
para los otros tipos de campos utilice ese mismo metodo para obtener la columna, el problema solo pasa con el campo YES/no.
Muchas Gracias