如何在SharePoint中获取列表的值
本文关键字:列表 获取 SharePoint | 更新日期: 2023-09-27 18:21:09
我创建了一个日历列表,并在该列表中添加了几列。现在我想从日历列表中检索一个特定列表项的值。列表名称-->
日历字段-->课程名称、开始日期、结束日期、主持人、总座位等…
我想单独检索"总座位"的值。
namespace CourseCount.EventReceiver1
{
public override void ItemAdded(SPItemEventProperties properties)
{
base.ItemAdded(properties);
SPSite oSiteCollection = SPContext.Current.Site;
SPWeb myWeb = SPContext.Current.Web;
SPList spList = myWeb.Lists["Calendar"];
SPListItemCollection spListItemCollection = spList.Items;
SPListItem item = spListItemCollection.Add();
int count = item["Total Seat"]; // <-here is my doubt
}
}
我想您想从触发事件接收器的项目中读取Total Seat字段。您可以通过SPItemEventProperties
:访问SPListItem
public override void ItemAdded(SPItemEventProperties properties)
{
int totalSeal = (int)properties.ListItem["Total Seat"];
// ...
}
调试程序完成了吗?关于你的第二条评论,我只是想做一点不同,因为我怀疑这是否会毫无问题地奏效。但是,如果您以前的通话在没有任何转换的情况下成功,那么这次也应该成功。您需要确定的是该列是否存在。
int count = Convert.ToInt32(item["Total Seal"].ToString());
尽管这个问题是几个月前的事了。。。我解决了一个类似的问题,得到了一个解决方案,我想在这里分享。在我的代码示例中,我将数字类型的SPCalculatedField中的值提取到一个浮点变量中。我想你也可以用这个来解决你的问题。变量项的类型为SPListItem。函数GetFormattedValue随SharePoint API一起提供。
float count;
bool success = float.TryParse(item.GetFormattedValue("Total Seat"), out count);