Acceder a los fields

14/03/2007 - 16:28 por Pablo | Informe spam
He agregado un field a muchas páginas de este tipo
<SharePointWebControls:BooleanField FieldName="miField"
runat="server"></SharePointWebControls:BooleanField>

Y ahora estoy haciendo un web part que debe recorrer todo el sitio viendo
cuales han sido marcadas a Yes y cuáles no. No debe ser dificil no? Pues yo
ya estoy un poco desesperado

Accedo a los fields de una página con este código, pero una vez tengo el
field ¿COMO SE SI ESTA MARCADO O NO?.
Gracias y perdon por los gritos, será el café ;)

SPWeb web =SPControl.GetContextWeb(Context);
foreach(SPList list in web.Lists)
{
output+="<b>Title "+list.Title+"
-"+list.BaseTemplate.ToString()+"-</b><br>";
foreach (SPItem i in list.Items)
{
foreach (SPField f in i.Fields)
{
if(f is SPFieldBoolean)
{
output += "Aqui quiero el valor de este fields:
"+f.Title+"<br>";
}
}
}

Preguntas similare

Leer las respuestas

#1 Gustavo
14/03/2007 - 22:08 | Informe spam
Hola Pablo,
Suponiendo que el campo se llama "si-o-no", y que todas las listas tienen
este campo:

foreach(SPList list in web.Lists)
{
foreach (SPListItem i in list.Items)
{
output += i["si-o-no"].ToString();
}
}

Te devuelve "fals" o "true".
PS: Menos cafe y mas te 8-)
Saludes,
Gustavo
http://www.gavd.net/servers/default.aspx
http://geeks.ms/blogs/gvelez/


"Pablo" wrote:

He agregado un field a muchas páginas de este tipo
<SharePointWebControls:BooleanField FieldName="miField"
runat="server"></SharePointWebControls:BooleanField>

Y ahora estoy haciendo un web part que debe recorrer todo el sitio viendo
cuales han sido marcadas a Yes y cuáles no. No debe ser dificil no? Pues yo
ya estoy un poco desesperado

Accedo a los fields de una página con este código, pero una vez tengo el
field ¿COMO SE SI ESTA MARCADO O NO?.
Gracias y perdon por los gritos, será el café ;)

SPWeb web =SPControl.GetContextWeb(Context);
foreach(SPList list in web.Lists)
{
output+="<b>Title "+list.Title+"
-"+list.BaseTemplate.ToString()+"-</b><br>";
foreach (SPItem i in list.Items)
{
foreach (SPField f in i.Fields)
{
if(f is SPFieldBoolean)
{
output += "Aqui quiero el valor de este fields:
"+f.Title+"<br>";
}
}
}

Respuesta Responder a este mensaje
#2 Pablo
15/03/2007 - 09:30 | Informe spam
Gracias Gustavo!

Asi ya va, como decía mi profesor de estadísticas: "el error más común es
resolver correctamente el problema equivocado"

Lo único que tenia que hacer es buscar sobre web.Lists en vez de sobre el
fields.

En mi defensa tengo que decir que no esta muy bien documentado que digamos
por parte de microsoft. A alguien se le olvidó poner la descripcion de muchos
métodos. :)



"Gustavo" wrote:

Hola Pablo,
Suponiendo que el campo se llama "si-o-no", y que todas las listas tienen
este campo:

foreach(SPList list in web.Lists)
{
foreach (SPListItem i in list.Items)
{
output += i["si-o-no"].ToString();
}
}

Te devuelve "fals" o "true".
PS: Menos cafe y mas te 8-)
Saludes,
Gustavo
http://www.gavd.net/servers/default.aspx
http://geeks.ms/blogs/gvelez/


"Pablo" wrote:

> He agregado un field a muchas páginas de este tipo
> <SharePointWebControls:BooleanField FieldName="miField"
> runat="server"></SharePointWebControls:BooleanField>
>
> Y ahora estoy haciendo un web part que debe recorrer todo el sitio viendo
> cuales han sido marcadas a Yes y cuáles no. No debe ser dificil no? Pues yo
> ya estoy un poco desesperado
>
> Accedo a los fields de una página con este código, pero una vez tengo el
> field ¿COMO SE SI ESTA MARCADO O NO?.
> Gracias y perdon por los gritos, será el café ;)
>
> SPWeb web =SPControl.GetContextWeb(Context);
> foreach(SPList list in web.Lists)
> {
> output+="<b>Title "+list.Title+"
> -"+list.BaseTemplate.ToString()+"-</b><br>";
> foreach (SPItem i in list.Items)
> {
> foreach (SPField f in i.Fields)
> {
> if(f is SPFieldBoolean)
> {
> output += "Aqui quiero el valor de este fields:
> "+f.Title+"<br>";
> }
> }
> }
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida