Миграция между встроенным в 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();
}
}