在我的Visual Studio 2010 SharePoint项目中

我有一个spitemeventreceiver,它包含在其自身元素中。xml

我有2个相互排斥的站点收集功能,它们从未在同一站点集合中激活。

我想在他们两者中使用SpiteMeventReceiver。

我发现我可以将事件接收器的元素添加到两个站点集合功能中。

这似乎有效,但Studio报告了警告。

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

我找不到有关此警告或此配置的可能副作用的任何文档。

在多个功能之间共享SpiteMeventReceiver的推荐方法是什么?

有帮助吗?

解决方案

如果这是VS2008,我将在我的项目(独立.cs文件)中创建我的接收器类,该类别从正确的类中继承并实现其需要执行的操作,只需连接两个单独的元素。xml文件。通过分配正确的ReceiverAssembly和ReceiverClass属性来使用类。

您可能可以做与VS2010相似的事情,但要使用功能合并文件进行。

其他提示

这是一个警告。如果您不是故意使用此配置,那么它就在那里。即,您已将其添加到您想要的功能中,但没有将其从功能中删除,默认情况下也会添加。
我已经成功部署并使用了在包装时发出警告的解决方案
如果您要有两个元素将部署到同一物理文件位置,那么该解决方案将不允许您打包

我建议您尝试将接收器构建为单独的项目项目。然后应该将解决方案软件包部署,并可以添加到两个功能中。

不要在这里煽动战争,但是...使用WSPBuilder?

许可以下: CC-BY-SA归因
scroll top