Pregunta


Tengo una lista que se está llenando de un programa que toma la entrada del usuario, tengo un problema cuando se trata de agregar una persona o grupo a una de las columnas de la lista. ¿Alguien sabe cómo hacer esto?

¿Fue útil?

Solución

Mira este artículo: http://blogs.msdn.com/b/uksharepoint/archive/2009/02/17/quick-tip-using-the-s-s-sharepoint-person-or-group-field-in-code-part-1.aspx

te muestra cómo usarlo:

Console.WriteLine("Enter a ; delimited list of domain\alias that need to be added:");
string sAliases = Console.ReadLine(); //captures whatever the user entered
string sValueToAddToFieldInSP = ""; //used to build the full string needed for the person field

string sAllContacts = "";

using (SPSite site = new SPSite(“http://sites/site/yoursite”))
{
    site.AllowUnsafeUpdates = true;
    using (SPWeb web = site.RootWeb)
    {
        web.AllowUnsafeUpdates = true;
        string[] aAliases = sAliases.Split(';');
        foreach (string sAlias in aAliases)
        {
            SPUser user = web.EnsureUser(sAlias);
            sAllContacts += user.ID.ToString() + ";#" + user.LoginName.ToString() + ";#";
        }
        web.Update();
    }
}

if (sAllContacts.EndsWith(";#"))
{
    sAllContacts = sAllContacts.Substring(0, sAllContacts.Length - 2);
}

//add the list item
SPList l = web.Lists["<name of your list>"];
SPListItem li= l.Items.Add();
li["Title"] = sAllContacts ;
li["MyPerson"] = sAllContacts ;
li.Update();
Console.WriteLine("Done");
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top