Pregunta

¡Hola y gracias por mirar!

Fondo

Estoy creando una aplicación web comercial para un cliente grande que requiere que usemos su licencia de SharePoint existente ya que lo han pagado.

La capa SharePoint de esta aplicación (que se ejecuta en el servidor web que también ejecuta SP) está escrita en C# ASP.NET 2.0. Fuera de eso, estamos escribiendo una aplicación ASP.NET MVC 3 en C# y ASP.NET 4 y, aunque normalmente construimos una buena biblioteca central, front-end web, backend de MSSQL con entidades en el medio, etc., somos atrapado con SharePoint 2007 como backend y, en última instancia, un CMS.

Entonces, estamos haciendo de SP la capa de servicio. Su único trabajo es responder a las solicitudes de datos con objetos JSON, luego nuestra aplicación MVC3 lo toma desde allí construyendo entidades del JSON, utilizando Linq, Lambdas, etc. modernos, etc.

El problema

Nos encontramos teniendo que estructurar las tablas de datos (que vivirán en SharePoint como listas de SharePoint) para ajustarse a la forma en que los usuarios finales administrarán el contenido. Entonces, en esencia, esto requiere una cantidad de columnas más grande de lo normal en cada tabla para mantener datos que normalmente se basarían en relación. Sí, sé todo sobre listas de búsqueda, gracias.

En el mundo moderno, recurriríamos a múltiples tablas de datos, construiríamos una entidad/modelo y luego emitiríamos una forma de esa entidad que el usuario final podría usar para actualizar los diversos datos.

En el mundo de SharePoint, la desafortunada tendencia es construir una mesa enorme para que una forma extraída imiten una entidad bien planificada.

Supongo que la respuesta radica en usar SharePoint Designer 2007 para crear formularios personalizados que extraen de varias tablas y permiten un poco de lógica y flexibilidad, pero no me importa usar esta herramienta (que debo hacer a través de RDC) para la creación de formularios. Prefiero automatizar la creación de estas formas basadas en la entidad que construyo en una herramienta de desarrollo que estoy construyendo. Asi que. . .

Mi pregunta

Dado que ya tengo tecnologías de generación de código robustas, que incluyen la creación de listas de SharePoint y tal a través del código C#, ¿hay alguna manera (a través de C#) para crear formularios personalizados de SharePoint sin pasar por SharePoint Designer?

En otras palabras, ya he escrito un código que me permite crear las tablas de datos (listas de SharePoint) de la forma en que estarían en SQL, luego generar el modelo de entidad de datos y el código correspondiente para emitir una respuesta JSON. Ahora solo necesito automatizar el proceso de construcción de un formulario de SharePoint personalizado que vincule mi modelo, que se basa en múltiples listas de SharePoint, a ese mismo flujo de trabajo. Puedo lograr esto a través del diseñador de SharePoint, pero ¿cómo lo hago en C#?

¡Muchas gracias!

Mate

¿Fue útil?

Solución

Para formularios de lista personalizados, tiene la opción de desarrollar: plantillas de renderizado personalizadas. Estos son archivos ASCX y, por lo tanto, si tiene diseños estandarizados, etc., es muy posible que pueda automatizar la generación de código hasta cierto punto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top