строгие значения профиля в членстве ASP.NET (MVC) - PullRequest
1 голос
/ 30 сентября 2011

Я использую ASP.NET MVC с регистрацией на основе членства в течение нескольких лет, и все работает нормально (теперь это MVC3, но членство не изменилось с первой версии, которая была MVC1).Теперь мне нужно добавить значение в профиль (только одно значение, которое используется очень редко - чтобы оно не требовало настраиваемого поставщика членства или пользовательских таблиц)

Я получил его через profile.SetPropertyValue("myprop"), но ядействительно хотел бы заставить profile.myprop работать.Возможно ли это?

Я видел несколько советов иметь собственный класс MyProfile : ProfileBase и иметь myprop в качестве свойства этого класса.По какой-то причине приведение ProfileBase.Create(currentUser.UserName) к MyProfile выдает ошибку (недопустимое приведение).

Есть ли где-нибудь пример приложения ASP MVC с профилем, похожим на Old Post от ScottGu

1 Ответ

1 голос
/ 30 сентября 2011

У Джоэла Спольски был отличный ответ на этот вопрос в этом посте . Вы в основном на правильном пути.

Если вы получаете ошибку недопустимого приведения, скорее всего, это связано с проблемой в файле конфигурации. Убедитесь, что это включено; точнее, раздел <profile defaultProvider="SqlProvider" inherits="YourNamespace.AccountProfile">.

<profile defaultProvider="SqlProvider" inherits="YourNamespace.AccountProfile">
    <providers>
         <clear />
         <add name="SqlProvider"
              type="System.Web.Profile.SqlProfileProvider"
              connectionStringName="sqlServerMembership" />
    </providers>
</profile>
...