Как заблокировать возможность добавления той же записи в SPList?

Есть ли возможность заблокировать возможность добавления тех же данных в SPList? Я знаю, что две записи всегда отличаются полем ID. Я хотел бы проверить другие настраиваемые поля, добавленные мной ранее, и не разрешать добавлять одно и то же значение поля. Может ли кто-нибудь сказать мне, как это реализовать? Я могу предположить, что приемники событий могут быть ответом, но я не смог найти, как добавить получателя в SPList. Может ли кто-нибудь сказать мне, прав ли я, и какова пошаговая процедура добавления такого приемника событий? Я хотел бы знать, как его собрать и установить с помощью файла Feature.

С уважением

T.S.


person truthseeker    schedule 12.05.2010    source источник


Ответы (2)


Да, этого можно добиться, написав приемник событий, который будет обрабатывать события ItemAdding и ItemUpdating. Вы можете проверить, является ли новое значение уникальным, выполнив CAML-запрос к существующим элементам, а если это не так, вы зададите свойствам события properties.ErrorMessage и properties.Cancel значение true.

Вы можете найти достаточно информации о присоединении приемника к спискам по адресу http://blogs.msdn.com/brianwilson/archive/2007/03/18/event-handlers-part-3-register-event-handlers.-plus-free-site-settings-manage-event-handlers-add-on.aspx

person kerray    schedule 13.05.2010

Вы правы, поэтому я проверяю ваш пост как ответ на мой вопрос. Но я думаю, что есть лучшие сайты для изучения обработчиков событий для начинающих пользователей:

1) http://msdn.microsoft.com/en-us/library/ms475328.aspx
2) http://www.c-sharpcorner.com/UploadFile/Chandresh.P/EventHandler04292009070324AM/EventHandler.aspx
3) http://www.wrox.com/WileyCDA/Section/Programming-Event-Handling-in-Windows-SharePoint-Services.id-306329.html

С уважением Т.С.

person truthseeker    schedule 13.05.2010