nir*_*rav 1 c# asp.net sharepoint
现在,在我的程序中,我在SharePoint中创建了一个列,其中包含"人员或组"列
- 允许多项选择:是.
现在在C#中,我创建了一个表单,然后从People Picker中获取数据.
我在列表中插入该数据:
像这样:
{
string strName = "8;1001"; //User.Id and User.LoginName of **single** user
objItem["name"] = strName;
}
Run Code Online (Sandbox Code Playgroud)
现在这很好用.但我不知道如何为多个用户插入.
我通过分隔" ;(分号) " 尝试了它,但它给出了无效的查找值错误.
像这样:
{
string strName = "8;1001;2;2001"; //User.Id and User.LoginName of **2 users**
objItem["name"] = strName;
}
Run Code Online (Sandbox Code Playgroud)
小智 5
这是详细代码: -
void btnSubmit_Click(object sender, EventArgs e)
{
//ctrlpplPicker is object of PeopleEditor
string[] userarray = ctrlpplPicker.CommaSeparatedAccounts.ToString().Split(',');;
SPFieldUserValueCollection usercollection = new SPFieldUserValueCollection();
for (int i = 0; i < userarray.Length; i++)
{
SPFieldUserValue usertoadd = ConvertLoginAccount(userarray[i]);
usercollection.Add(usertoadd);
}
SPList list = SPContext.Current.Web.Lists["user tasks"];
SPListItem item = list.Items.Add();
item["Team"] = usercollection;
item.Update();
}
public SPFieldUserValue ConvertLoginAccount(string userid)
{
SPFieldUserValue uservalue;
using (SPSite site = new SPSite(SPContext.Current.Site.Url))
{
using (SPWeb web = site.OpenWeb())
{
SPUser requireduser = web.EnsureUser(userid);
uservalue = new SPFieldUserValue(web, requireduser.ID, requireduser.LoginName);
}
}
return uservalue;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
29003 次 |
| 最近记录: |