Pregunta

Estoy tratando de establecer el campo "dirigidas a las audiencias" en un elemento de lista mediante programación. He sido capaz de establecer el valor de programación para una audiencia, pero cuando intento utilizar múltiples audiencias, SharePoint trata de interpretar el valor me he fijado como una sola audiencia, en lugar de múltiples. Estoy configurando el valor utilizando el código de abajo.

listItem[listItem.Fields["Target Audiences"].InternalName] = "Audience One";

Yo uso este código para especificar múltiples audiencias de este modo:

listItem[listItem.Fields["Target Audiences"].InternalName] = "Audience One; Audience Two";

Cuando hago esto, SharePoint trata de interpretar la cadena entera como una sola audiencia, y me sale un mensaje cuando edito el elemento de lista que dice "No exact match was found."

¿Estoy usando el formato correcto para especificar múltiples audiencias para este campo, o hay una clase que debo utilizar similar a SPFieldLookupValue?

¿Fue útil?

Solución 2

Sólo di cuenta de que nunca regresó y respondió a esto.

Terminé almacenar los nombres de las audiencias en una columna adjunta a cada elemento de la lista, a continuación, consultar el modelo de objetos para ver si el usuario actual es un miembro de las audiencias. Esto funcionó para mí porque yo estaba tirando de los datos desde el elemento de la lista en un elemento web personalizado, y el usuario nunca vio el elemento de lista actual.

Otros consejos

No sé cómo salvar múltiples audiencias en un SPListItem, pero si tuviera este problema, me gustaría tratar de imprimir el valor de este campo a partir de un script de PowerShell. Algo así como:

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint");
$site = Microsoft.SharePoint.SPSite("http://yourserver");
$web = $site.openweb();
$list = $web.lists["YourList"];
$item = $list.getitembyid(itemid);
write-output $item["Target Audiences"];

EDIT: encontrado algo de información acerca de lo que el valor del campo de audiencia en realidad es: http: / /dotnetmafia.sys-con.com/node/1181567/mobile

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top