2009-08-30 3 views
0

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

  • Членство создает новую базу данных. Какой из них лучше, использовать одну и ту же базу данных для моей базы данных приложений ИЛИ создать новую базу данных для моего приложения? Зачем?
  • Если я собираюсь создать новую базу данных для своего приложения. Какой из них лучше, создание новой пользовательской таблицы в моей базе данных приложений или повторное использование/расширение таблицы пользователей в базе данных членства?

Спасибо заранее,

RWendi

ответ

5

Я сам поклонник провайдеров Membership/Роли/Профиль, так что я немного предвзято. В принципе, если бы я оценил, что использовать для проекта, я бы посмотрел на требования. Я не вижу причин для реализации вашей собственной функции членства, если по умолчанию работает для вас. Он имеет множество функций и довольно хороших оптимизаций (например, столбцы с нижним регистрационным именем и электронной почтой по соображениям производительности).

Обычно я создаю единую базу данных для своих данных и моего членства. Я связываю другие таблицы, добавляя столбец имени пользователя, но не внешний ключ, чтобы избежать проблем с удалением пользователей. Более того, идентификатор GUID, который является идентификатором пользователя, не может быть получен с помощью интерфейса поставщика членства, и вам нужно будет написать свою собственную хранимую процедуру, если вы хотите ссылаться на файл по идентификатору пользователя.

+1

+1 - DRY - не повторяйте себя - если существует хорошая система членства/роли и обрабатывает все, что вам нужно (или даже если вы можете легко расширить его, чтобы справиться со всеми вашими потребностями) - используйте его! Не изобретайте велосипед для gazillionth time :-) –

1

Что касается отдельной базы данных или нет, то, как правило, у вас есть выбор, если у вас есть ресурсы (например, вы не на общем хосте с одним SQL-сервером db). Основное преимущество заключается в том, что пользовательские данные имеют тенденцию быть довольно специфичными для приложения (например, - вам не нужны данные о производственных пользователях в QA), поэтому, если вы живете отдельно, это делает вещи немного чище, так как вам нужно всего лишь проследить данные приложения ,

Смежные вопросы