La documentación es útil y podrás probar las consultas sin problemas
Bueno, si miras al DataTable verás que tienes todo lo necesario para traerte el SPListItem fácilmente.
Me he creado un extension method, bueno dos,... Me encantan los extension methods.
public static SPListItem GetListItemFromSiteData(this DataRow ItemRow, SPSite ParentSite) { using (SPWeb Web = ItemRow.GetWebSiteData(ParentSite)) { return Web.Lists[new Guid(ItemRow["ListId"].ToString())].GetItemById(Convert.ToInt32(ItemRow["ID"])); } } public static SPWeb GetWebSiteData(this DataRow ItemRow, SPSite ParentSite) { return ParentSite.OpenWeb(new Guid(ItemRow["WebId"].ToString())); }
Usando estos dos podrás iterar fácilmente por la colección de filas del DataTable, seleccionar qué elementos necesitan ser actualizados y actualizarlos.
No he probado cómo de rápido es comparado con traerte los objetos con una CAML query. No tener que crear la SPListItemCollection podría hacer este método más rápido y más conveniente para según que cosas... Lo probaré,
No hay comentarios:
Publicar un comentario