¿Cuál es la forma de recomendación de compartir un solo elemento entre múltiples características?

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/13440

  •  16-10-2019
  •  | 
  •  

Pregunta

En mi proyecto Visual Studio 2010 SharePoint

Tengo un solo spitemeventReceiver que está contenido en sus propios elementos.xml

Tengo 2 características de colección de sitios que son mutuamente excluyentes, las ambas nunca se activan en la misma colección de sitios.

Quiero usar el SpitemEventReceiver en ambos.

Descubrí que puedo agregar el elemento.xml para mi receptor de eventos en ambas funciones de colección de sitios.

Esto parece funcionar, pero Studio informa una advertencia.

The Project Item "MyItemEventReceiver" is included in the following Features: SiteFeature1, SiteFeature2

No puedo encontrar ninguna documentación sobre esta advertencia o los posibles efectos secundarios de esta configuración.

¿Cuál es la forma recomendada de compartir un SpitemEventReceiver entre múltiples características?

¿Fue útil?

Solución

Si se tratara de VS2008, crearía mi clase de receptor en mi proyecto (archivo .cs independiente) que hereda de la clase correcta e implementa lo que sea necesario, y simplemente conecte los dos archivos de elementos separados de las dos características Para usar la clase asignando las propiedades correctas de recepción y receptor y receptor.

Probablemente pueda hacer algo similar con VS2010, pero haciendo el uso de los archivos de combinación de funciones.

Otros consejos

Es una advertencia. Simplemente está allí en caso de que no quisiera tener esta configuración. es decir, ha agregado a la función en la que la desea, pero no la eliminó de la función que también se agregó de forma predeterminada.
He implementado y utilizado con éxito soluciones que dieron esta advertencia mientras empaquetan
La solución no le permitirá empaquetar si va a tener dos elementos que terminan desplegando en la misma ubicación de archivo físico, por lo que en este caso es seguro ignorar la advertencia esta vez

Le sugiero que intente construir el receptor como un elemento de proyecto separado. Eso debería implementarse con el paquete de solución y se puede agregar a ambas funciones.

No para incitar una guerra aquí, pero ... ¿usar WSPBuilder?

Licenciado bajo: CC-BY-SA con atribución
scroll top