comment puis-je ajouter un événement récepteur uniquement pour la liste avec specyfic id de modèle
Je suis en ajoutant ItemAdding récepteur d'événements personnalisés modèle de liste. À la fois récepteur et de la liste modèle déployé par la même fonctionnalité. Également la même fonction crée une Liste d'Instances.
Le problème que j'ai c'est que l'événement est tiré pour chaque élément de la liste dans le site où elle a été déployée. Elements.xml pour eventreceivre est:
<Receivers ListTemplateId="10200">
<Receiver>
<Name>ListEventReceiverItemAdding</Name>
<Type>ItemAdding</Type>
<Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>
<Class>SharepoitProject.ListEventReceiver</Class>
<SequenceNumber>10000</SequenceNumber>
</Receiver>
</Receivers>
Je ne suis pas sûr de ce que je fais mal, j'ai fait plus ou moins everythin de ici.
Env: Sharepoint 2010 avec la Fonctionnalité de Publication sur ce Site
Voulez-vous dire qu'il est déclenché pour chaque élément de la liste pour chaque liste?
Je veux dire que lorsqu'un élément est ajouté à certains de la liste sur le site (pas nécessairement de la liste créée à partir de temlate 10200) l'événement est déclenché.
Bizarre, on dirait que vous l'avez fait à droite.. Essayez d'activer la fonctionnalité sur une nouvelle collection de sites. Juste pour s'assurer qu'il n'a pas été jointe à l'ensemble des listes au cours du développement.
Oui j'ai essayé, rien n'a changé.
Avez-vous essayé ListTemplateOwner = "GUID de votre Fonctionnalité" avec ListTemplateID.
Je veux dire que lorsqu'un élément est ajouté à certains de la liste sur le site (pas nécessairement de la liste créée à partir de temlate 10200) l'événement est déclenché.
Bizarre, on dirait que vous l'avez fait à droite.. Essayez d'activer la fonctionnalité sur une nouvelle collection de sites. Juste pour s'assurer qu'il n'a pas été jointe à l'ensemble des listes au cours du développement.
Oui j'ai essayé, rien n'a changé.
Avez-vous essayé ListTemplateOwner = "GUID de votre Fonctionnalité" avec ListTemplateID.
OriginalL'auteur Lukasz Salamon | 2010-10-25
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même problème avec mon Récepteur d'Événements. J'ai essayé ListTemplateId, ListTemplateOwner, et même ListUrl. Je savais que les paramètres sont valides, mais ils ont été ignorés et le récepteur attribué à chaque liste.
J'ai eu un pressentiment qu'il pourrait être lié à l'Événement Récepteur étant déclarée à l'intérieur d'un Site dont l'étendue de la fonctionnalité. Cela semble être confirmé par le "documentation" pour SPEventElement:
Il semble que ListTemplateId, ListTemplateOwner, et ListUrl sont ignorés pour le Site d'étendue de fonctionnalités. Lorsque j'ai déplacé mon Cas un élément Récepteur à un site Web d'étendue de fonction, le récepteur est correctement attachée à la liste de votre choix.
OriginalL'auteur Rich Bennema
Lorsque l'étendue site il a tiré pour toutes les listes. Quand je l'étendue de la solution à web il a travaillé. Espérons que cela aide.
OriginalL'auteur Pradeep
À partir du kit de développement MSDN - http://msdn.microsoft.com/en-us/library/ms431081.aspx
Cela me mène à croire que la liste templateID vous fourni peut être invalide.
OriginalL'auteur brian brinley
Si vous avez besoin de trop de la portée de l'événement récepteur spécifique de la liste que vous devez définir cet attribut
et il va travailler ISA
mais assurez-vous que votre fonction est web étendue de pas site de portée que si elle est portée de site, il sera le feu, pour toutes les listes dans le système
OriginalL'auteur Ahmed Hefny