Manifest file for registration of event handler in SP 2007
I'm trying to create a feature to register my event handler to a specific list. I'm building it like I would a normal feature. However, I'm not sure how to define my Elements file. The file for my feature is as follows:
<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Receivers ListTemplateId="101">
<Receiver>
<Name>AddedEventHandler</Name>
<Type>ItemAdded</Type>
<SequenceNumber>10000</SequenceNumber>
<Assembly>ChangeContentTypeEventHandler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=7bfc7c17f98031d7</Assembly>
<Class>ChangeContentTypeEventHandler.ChangeContentTypeEventHandler</Class>
<Data></Data>
<Filter></Filter>
</Receiver>
</Receivers>
</Elements>
Based on this, how would I set up the file for registration of this event handler?
Also, here is my Feature.xml file:
<?xml version="1.0" encoding="utf-8" ?>
<Feature Scope="Web" Title="Change Content Type Event Handler"
Id="{27C2FDFF-ADA0-4984-955C-6448E182FA88}"
xmlns="http://schemas.microsoft.com/sharepoint/">
<ElementManifests>
<ElementManifest Location="ListTemplates\ListManifest.xml"/>
<ElementFile Location="Messages\schema.xml"/>
</ElementManifests>
<开发者_JAVA百科;/Feature>
Also, can this be part my solution package WSP for the feature itself so that it gets deployed with the feature?
Thanks in advance
You have two options here. Either you create a custom list template so that you can specify the id of your custom list template in your elements file, or you have to attach your event receiver through code (feature receiver).
The problem with registering an event receiver declaratively is that you can only specify the list template id (effecting all lists based on the specified template), but not a single list name or id.
You can find an example of such a feature receiver in this article: http://www.sharepointdev.net/sharepoint--development-programming/whether-there-is-a-way-to-register-a-custom-event-handler-at-a-special-list-63446.shtml
精彩评论