Нужно объяснение CreateWizard и профилей при вставке в базу данных - PullRequest
1 голос
/ 02 февраля 2011

Я наконец-то заставил CreateWizard и Profile работать в моей системе, но мне трудно понять, почему свойства в профиле хранятся в базе данных так, как она есть. Например, все, что я добавляю в свойства для профиля, сохраняется в столбце с именами PropertyNames и PropertyValueString.

У меня проблемы с пониманием, почему они это делают. Я понимаю, что propertynames соответствует propertyvaluestrings, но почему они не помещаются в отдельные столбцы в таблице профиля?

Что, если я хочу сохранить эти значения в столбцах, таких как Address или AccountBalance, вместо того, чтобы хранить их все в одной строке, как мне сохранить PropertyValueString обновленным, если я изменю пользователей AccountBalance?

Также, когда я создаю пользователя с помощью CreateWizard, нужно ли мне вручную запускать запрос для вставки дополнительной информации в столбцы профиля (если я расширяю исходную таблицу профиля, чтобы в ней было больше столбцов, например FirstName LastName так далее)? я что-то упускаю здесь? Также я слышал, что люди используют их для сериализации xml для строк, каковы преимущества этого? Спасибо

1 Ответ

0 голосов
/ 02 февраля 2011

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

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

Фактически, если вы используете Google дляasp.net profile providers, существует множество примеров написания собственного провайдера.Выберите тот, который соответствует тому, что вы хотите сделать.

...