Extending.NET MembershipCreateStatus перечисление


В основном, то, что я пытаюсь сделать, это добавить больше элементов в базовое перечисление MembershipCreateStatus, упакованное с .NET. однако, очевидно, вы не можете сделать "частичное перечисление", например:

public partial enum CreateMembershipStatus
{
    DuplicateCompany = 12,
    ActivityTooRecent = 13,
    MultipleMatches = 14
}

Есть ли способ добавить элементы в список CreateMembershipStatus? Моя цель состоит в том, чтобы иметь дело с другими предсказуемыми результатами вместо того, чтобы просто дать пользователю поймать все "отклоненные пользователем"

Спасибо!

2 2

2 ответа:

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

Мне кажется, что пользовательская обработка ошибок, которую вы можете выполнить до вызова CreateUser(). Или еще лучше, если вы сделаете это после CreateUser() вызова, если он не сработает. В этом случае вы можете проверить возвращенное значение MembershipCreateStatus и выполнить дополнительные проверки в соответствии со статусом и вернуть пользовательское сообщение.