Можно использовать любой из них:
public delegate double CustomerDelegate(int test);
public interface ITest
{
EventHandler<EventArgs> MyHandler{get;set;}
CustomerDelegate HandlerWithCustomDelegate { get; set; }
event EventHandler<EventArgs> MyEvent;
}
В настоящее время нет встроенного способа использования хранилища данных движка приложения. См., Например, этот билет datanculeus . (Обратите внимание, что сам JDO имеет аннотацию @unique.)
Один из способов «подделать» это - создать другой тип / класс, называемый Email, с самим электронным письмом в качестве ключа и ключом пользователя в качестве свойства. Поскольку электронное письмо теперь является ключом, оно будет обязательно уникальным. Просто убедитесь, что ваши объекты электронной почты являются объектами верхнего уровня, а не дочерними элементами связанного с ними пользователя. Вам также придется уделять пристальное внимание использованию транзакций, чтобы убедиться, что вы не позволите дубликату проскользнуть сквозь трещины, если два пользователя попытаются использовать один и тот же адрес электронной почты в одно и то же время.
Эта функция пока не поддерживается. Если вы решили написать слой DAO в своем проекте (неплохая идея), вы можете выполнить запрос, который проверит любые ограничения внутри MyObjectDAO.addMyObject (o), который вызовет исключение MySuperDuplicateValueException.