我正在根据列表编写Web部件。我在Web部分做的第一件事是验证我的自定义事件接收器是否在列表中注册。如果他们不是,我以编程方式注册。注册已注册的SharePoint事件接收器
我注意到,如果我尝试注册一个已经注册的事件,我没有得到任何错误,也没有“额外”事件被注册。
我的问题是:每次Web部件载入时注册事件而不是遍历事件接收者列表中的每个事件并比较一下,看看我的每个事件接收者是否在那里都会更有效率?
编辑
关于房产袋的建议。在仔细考虑后,这不是一个可行的解决方案。我“验证”接收者在那里的原因是因为我们有第三方webparts附加到同一个列表。这些在过去实际上未注册我们的定制接收器。在财产包中设置一个标志只会让我知道我已经验证过一次,但不会告诉我他们是否被另一个移除。
谢谢Kusek。权限不应该成为问题。我已经使用提升的权限进行注册。我看到这个想法的唯一缺陷是,多个网站上可能存在多个Web部件。 – AdamBT 2009-08-27 13:45:08
WebPart的指导或类似的东西应该可以帮助你获得独特的价值。 – Kusek 2009-08-27 13:47:07