2009-06-10 9 views

Respuesta

9

La mejor manera para que una aplicación independiente lea datos desde un sitio Sharepoint desde fuera de la granja es a través de Sharepoint Web Services. Esa página tiene un resumen de alto nivel sobre qué servicios están disponibles y qué hace cada uno. En Visual Studio, puede conectarse a estos creando Web References a los servicios deseados en su aplicación.

2

Probablemente desee utilizar el servicio Lists.asmx. Desde mi memoria, deberías poder hacer referencia a los servicios de SharePoint en http: ///_vti_bin/Lists.asmx. Hay servicios para acceso a datos, administración de sitios/páginas, seguridad, etc.

De manera predeterminada, si tiene una lista en una página llamada HR en un servidor llamado MyServer, sería http://MyServer/HR/_vti_bin/Lists.asmx. Cada nuevo sitio tendrá estos servicios web creados automáticamente.

También puede consultar el libro de SAMS "Desarrollo de Microsoft Sharepoint 2007". Lo usé para proyectos anteriores y me ayudó.

2

Lists.asmx es probablemente su mejor apuesta. Si está seguro de que su sitio web ASP.NET vivirá en el mismo servidor que SharePoint, podría usar el modelo de objetos de SharePoint.

Tenga en cuenta que las listas de SharePoint no son lo mismo que las tablas de la base de datos. Cosas como restricciones de clave externa, claves únicas, etc. no son tan sólidas en SharePoint.

Las listas de SharePoint proporcionan un gran valor, pero eso también tiene un costo en las cosas anteriores y también en el rendimiento.

0

Entonces, ¿quién va a mencionar el XML obtuso que devuelven estos servicios?

+0

Después de haber luchado con el XML que este requiere manejo, estoy completamente de acuerdo con el comentario de Wyatt. No existe una forma sencilla de consumir datos Sharepoint en una aplicación dot net, a diferencia, por ejemplo, MS Access 2007. – Nick

+0

Puede ser detallado, pero está documentado. –

1

Estoy de acuerdo con Rex M. También puede ayudarse a sí mismo con Linq to SharePoint para biuild y ejecutar la consulta También le permite conectarse a través de WS o el modelo de objetos, para poder usarlo dentro o fuera del servidor WSS.

2

La pregunta es buena. Sin embargo, las respuestas ahora son obsoletas.

de nuevas maneras de hacer lo que están pidiendo:

  1. SharePoint 2010 ahora soporta de forma nativa operaciones CRUD sobre fuera de la caja de interfaz REST
  2. ADO.NET Data Services se puede utilizar contra el resto punto final y luego consultas LINQ son posibles.
  3. jQuery también puede realizar operaciones CRUD contra el servicio si desea que una aplicación ASP.NET solo para el cliente haga el trabajo (sin capa de servicio).
  4. Usando Microsoft.SharePoint.Linq (y SPMetal para generar un modelo de entidad desde un sitio SP) también se puede ir por esa ruta.

También hay un modelo de objetos cliente.

Los conjuntos de resultados pueden ser en forma de XML, JSON, o AtomFeed

visita estos links para ver los detalles de código:

http://mydevexperience.wordpress.com/2011/06/25/how-to-query-sharepoint-data-source-using-ado-net-data-services/

http://mydevexperience.wordpress.com/2011/05/11/sharepoint-list-access-part-iii-how-to-access-sharepoint-windows-communication-foundation-wcf-rest-representational-state-transfer-services-using-jquery-entirely-client-side-only/

Cuestiones relacionadas