ASP.NET по умолчанию членство и API поставщика ролей - PullRequest
0 голосов
/ 18 февраля 2012

Предположим, в моем файле web.config есть следующее:

<profile enabled="true">
<providers>
...
<add name="Phone" type="System.String" defaultValue="" />

Я бы хотел, чтобы эта переменная была unique, как если бы вы указали уникальный сервер sql или что-то еще, т. Е. Для всех пользователей может быть один уникальный номер телефона.

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

Есть ли способ указать уникальный атрибут для свойства профиля с помощью ASP.NET 4.0? Спасибо!

Ответы [ 2 ]

1 голос
/ 18 февраля 2012

Самый простой способ сделать это - вместо того, чтобы пытаться вставить это в модель профиля - это, вероятно, создать новую таблицу, проиндексированную с помощью UserId, с собственным столбцом Phone и уникальным индексом.

0 голосов
/ 18 февраля 2012

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

edit

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

...