Миграция между встроенным в ASP.Net профилем провайдера к чему-то другому

Я работаю над проектом, который должен встать как можно быстрее. Мой план состоит в том, чтобы использовать провайдеров профилей ASP.Net, чтобы быстро получить что-то, а затем, возможно, вернуться позже. У меня вопрос, насколько сложно мигрировать между встроенным поставщиком профилей и моей собственной пользовательской схемой? Должен ли я прикусить пулю и сделать провайдера нестандартного профиля сейчас? Каковы возможные предостережения на этот счет?

1 ответ

Решение

Я прошел этот путь перед собой.

Это на самом деле не так уж плохо, но это действительно утомительно. Поскольку вы реализуете интерфейс, у вас есть большой список методов, которые вы можете написать сами.

Самым утомительным является тестирование вашей собственной версии и проверка того, что она работает так, как ожидается.

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

По сути, я хочу сказать, действительно ли вы хотите начать отсюда и после этого создать хранилище пользователей?

 public class MyProfile : ProfileProvider
 {

    public override int DeleteInactiveProfiles(ProfileAuthenticationOption authenticationOption, DateTime userInactiveSinceDate)
    {
        throw new NotImplementedException();
    }

    public override int DeleteProfiles(string[] usernames)
    {
        throw new NotImplementedException();
    }

    public override int DeleteProfiles(ProfileInfoCollection profiles)
    {
        throw new NotImplementedException();
    }

    public override ProfileInfoCollection FindInactiveProfilesByUserName(ProfileAuthenticationOption authenticationOption, string usernameToMatch, DateTime userInactiveSinceDate, int pageIndex, int pageSize, out int totalRecords)
    {
        throw new NotImplementedException();
    }

    public override ProfileInfoCollection FindProfilesByUserName(ProfileAuthenticationOption authenticationOption, string usernameToMatch, int pageIndex, int pageSize, out int totalRecords)
    {
        throw new NotImplementedException();
    }

    public override ProfileInfoCollection GetAllInactiveProfiles(ProfileAuthenticationOption authenticationOption, DateTime userInactiveSinceDate, int pageIndex, int pageSize, out int totalRecords)
    {
        throw new NotImplementedException();
    }

    public override ProfileInfoCollection GetAllProfiles(ProfileAuthenticationOption authenticationOption, int pageIndex, int pageSize, out int totalRecords)
    {
        throw new NotImplementedException();
    }

    public override int GetNumberOfInactiveProfiles(ProfileAuthenticationOption authenticationOption, DateTime userInactiveSinceDate)
    {
        throw new NotImplementedException();
    }

    public override string ApplicationName
    {
        get
        {
            throw new NotImplementedException();
        }
        set
        {
            throw new NotImplementedException();
        }
    }

    public override System.Configuration.SettingsPropertyValueCollection GetPropertyValues(System.Configuration.SettingsContext context, System.Configuration.SettingsPropertyCollection collection)
    {
        throw new NotImplementedException();
    }

    public override void SetPropertyValues(System.Configuration.SettingsContext context, System.Configuration.SettingsPropertyValueCollection collection)
    {
        throw new NotImplementedException();
    }
}
Другие вопросы по тегам