Recientemente me actualicé de Sharepoint 2007 a 2010. Tengo un servicio de Windows que inserta pdfs en sharepoint. Funciona muy bien en 2007. Cuando emigré a 2010, empecé a recibir el siguiente error intermitente:<nativehr> 0x80070002</nativehr> en Sharepoint 2010
<nativehr>0x80070002</nativehr>
at Microsoft.SharePoint.Library.SPRequestInternalClass.GetMetadataForUrl(String bstrUrl, Int32 METADATAFLAGS, Guid& pgListId, Int32& plItemId, Int32& plType, Object& pvarFileOrFolder) at
Microsoft.SharePoint.Library.SPRequest.GetMetadataForUrl(String bstrUrl, Int32 METADATAFLAGS, Guid& pgListId, Int32& plItemId, Int32& plType, Object& pvarFileOrFolder) at Microsoft.SharePoint.SPWeb.GetList(String strUrl)
Aquí está la línea de código:
SPList parentList = web.GetList(url);
Lo que es raro, es que esto sólo de vez en cuando falla De hecho, he completado esta línea de un bucle, y si falla, espero un poco, y luego trato de obtener la lista nuevamente. Por lo general, después de algunos intentos, GetList tendrá éxito.
Como no se puede duplicar fácilmente, estoy buscando pistas que pueda rastrear.
Desde las búsquedas de Google, la solución "recomendada" es cambiar cualquier llamada .GetList (...) a SPWeb.Lists [".."];
Pero, llegué lejos de que, debido a la exitosa Potencia en 2007 (.GetList (...) tiene mejor Potencia de SPWeb.Lists [ "..."])
¿Alguna sugerencia?
Gracias!
de Dave
¿Ha intentado web.Lists.TryGetList()? http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splistcollection.trygetlist(v=office.14).aspx – Alexey