2008-09-25 21 views
8

Se me ha pedido que desarrolle algunos controles de usuario en ASP.NET que luego se incluirán en un sitio de SharePoint como elementos web. Soy nuevo en SharePoint y no tendré acceso a un servidor de SharePoint durante el tiempo que necesito prototipar estas partes.Desarrollar elementos web de SharePoint en ASP.NET

¿Alguien sabe por alguna razón que este enfoque no funcionará? Si no se recomienda este enfoque, ¿cuáles serían las otras opciones? ¿Alguna sugerencia sobre un recurso/tutorial sobre qué considerar al desarrollar un elemento web ASP.NET con SharePoint en mente?

Gracias

Edición: 12/31/2008 finalmente marcó una respuesta a éste. Me tomó un tiempo darme cuenta de que ir por la ruta de SharePoint de inmediato, aunque doloroso al principio, es la mejor manera de hacerlo. La imagen de VPC gratuita hace que la configuración se desarrolle de manera relativamente indolora.

Si bien puede, como lo hice, desarrollar elementos web en ASP.NET sin SharePoint, cuando se trata de desarrollar y desplegar aplicaciones de SharePoint que no ha aprendido nada, solo alejaba la curva de aprendizaje en un momento en que piense que ha terminado, (y probablemente haya informado a las partes interesadas a tal efecto). Retrasar la curva de aprendizaje de SharePoint no le favorece a usted ni a su proyecto, y su producto final será mejor para la experiencia que gane en el camino.

Respuesta

2

Si se trata de una cosa muy corto plazo, Microsoft ha WSS imagen Evaluación VPC un tiempo limitado:

WSS3 SP1 Developer Evaluation VPC image

Eso le ayudará a empezar si usted no tiene tiempo/recursos para establecer su propia imagen VPC en este momento.

+0

Marqué esto como respuesta, finalmente. Este resultó ser el mejor curso en el largo, e incluso medio, ejecutar. – TheZenker

0

necesita tener acceso a un servidor sharepoint porque no puede simular su webpart sin él, tiene que implementarlo en su sitio sharepoint para probar si está funcionando. la depuración también sería un dolor. o puede usar SmartPart, es un elemento web que actúa como un contenedor para que los controles de su usuario se muestren en un sitio sharepoint.

2

Supongo que la manera más fácil es usar el SmartPart for SharePoint de CodePlex. La descripción del proyecto dice "El elemento web de SharePoint que puede alojar cualquier control de usuario web ASP.NET. ¡Cree sus partes web sin escribir código!", Que supongo que es exactamente lo que quiere hacer.

+0

Ciertamente no soy alérgico a la escritura de código, solo necesito dar un giro rápido. Gracias por la sugerencia – TheZenker

+0

También puedo recomendar el kit de herramientas SmartPart. Lo he usado con éxito en muchos proyectos de WSS. –

+0

También he usado el SmartPart ... funciona muy bien! – mattruma

0

construir y probar el control como si se tratara de un sitio web .net típico. Solución 1 = los controles Solución 2 = sitio web ficticio para alojar los controles.

despliegue de Sharepoint:

Tendrá que firmar los controles.

La caída de la DLL firmado en la GAC ​​en el servidor de SharePoint (Windows/montaje)

Marque el control como seguro en lo virtual Web.config raíz del servidor en el sitio de SharePoint.

i.e.

<SafeControl Assembly="MyControl, Version=1.0.0.0, Culture=neutral, PublicKeyToken=975cc42deafbee31" Namespace="MyNamespace" TypeName="*" Safe="True" AllowRemoteDesigner="True" /> 

Registrar el componente en su página de SharePoint:

<%@ Register Namespace="MyNamespace" Assembly="MyControl, Version=1.0.0.0, Culture=Neutral, PublicKeyToken=975cc42deafbee31" TagPrefix="XXXX" %> 

Utilice el control:

<XXXX:ClassName runat="server" Field1="Value1" Field2="Value2" ....></XXXX:Classname> 

Si necesita reemplazar el control utilizando el mismo número de versión, entonces usted necesidad de reciclar el grupo de aplicaciones para volver a cargar.

0

Si no necesita hacer nada específico de SharePoint (es decir, acceder a listas, otras partes web, etc.) entonces puede compilar su webpart como un webpart normal (derivado de System.Web.UI.WebControls.WebParts. Clase WebPart) y funcionará cuando se agregue a un sitio de SharePoint.

3

Los elementos web ASP.NET funcionan en SharePoint de la misma manera que funcionan en ASP.NET. Esa es la ruta que tomaría (control personalizado que deriva de la clase ASP.NET Web Part). Esto aliviará cualquier requisito para desarrollar realmente en un servidor de SharePoint.

El único problema con el que se encontrará es que no podrá aprovechar el marco de SharePoint. Si está haciendo algo avanzado en SharePoint, esto es un gran problema. Sin embargo, SharePoint es ASP.NET más alguna funcionalidad adicional, por lo que todo lo que pueda desarrollar utilizando la clase System.Web.UI.WebControls.WebPart debería funcionar de maravilla en SharePoint.

Algunas consideraciones que ayudarán a aliviar su dolor a medida que avanza desde ASP.NET pura a SharePoint:

  • Si usted puede poner todo dentro de un solo conjunto, el despliegue será más fácil
    • intento a poner todo lo que necesita en la DLL que se despliegan a SharePoint
    • recursos de montaje uso para incrustar JS, CSS y archivos de imagen si es necesario
  • nombre fuerte del conjunto que está construyendo
    • La mayoría de las implementaciones de SharePoint terminan en la GAC ​​y se requerirá un nombre fuerte

Aquí es un blog relevante; Developing Basic Web Parts in SharePoint 2007

+0

buena información, gracias por el enlace – TheZenker

0

No necesita SharePoint para desarrollar WebParts. Puede desarrollar partes web heredando desde System.Web.UI.WebControls.WebParts. Y esta es la forma preferible de crear piezas de la tela a menos que quiera las siguientes características como

* Connections between web parts that are outside of a Web Part zone 

* Cross page connections 

* A data caching infrastructure that allows caching to the content database 

* Client-side connections (Web Part Page Services Component) 

En cuyo caso es necesario desarrollar webparts heredando de Microsoft.SharePoint.WebPartpages.WebPart.Puede encontrar más información útil here

0

¿Hay alguna razón en particular por la que sus controles de usuario se deben implementar como elementos web? Es perfectamente factible implementar controles de usuario directamente en sitios Sharepoint a través de la carpeta CONTROLTEMPLATES en la sección 12 o en una ubicación en el directorio virtual de la aplicación web, que luego puede hacer referencia desde páginas web utilizando Sharepoint Designer.

Sin embargo, si el requisito de la parte web es crucial, recomiendo Smartpart para Sharepoint como ya se mencionó.

0

En realidad, los elementos web siempre deben desplegarse en la carpeta bin de Sharepoint debido a su naturaleza 'abusiva'. Siempre despliegue las partes web en el contenedor si es posible y escriba su propio CAS e inclúyalo en su manifiesto.

Cuestiones relacionadas