Я спрашивал об этом раньше, но я воскрешаю его, потому что не получил удовлетворительного ответа.
У меня есть переменная профиля, и когда я загружаю ее, ей назначаются значения по умолчанию.Мне нужно проверить, было ли это когда-либо назначено.Обычно я использую нулевое сравнение, но это не сработает.
Было предложено использовать FindProfilesByUserName, которое кажется обратным.Независимо от того, этот метод не будет работать, поскольку он только говорит мне, если пользователь создал какой-либо профиль, но не для конкретных данных члена, в которых я заинтересован. (Это кажется задом наперед, потому что вся цель профилей состояла в том, чтобы облегчитьполучить доступ к данным текущего профиля пользователя. Это кажется плохим дизайном, если я что-то упустил.)
Последний вариант, который я вижу, - это назначение битов каждому объекту, чтобы увидеть, были ли они загрязнены или установлены,Я не хочу делать это, если в этом нет необходимости.
Вот пример FindProfilesByUserName:
ProfileInfoCollection profileInfo = ProfileManager.FindProfilesByUserName(ProfileAuthenticationOption.All, Membership.GetUser().UserName);
if (profileInfo.Count > 0)
{
if (profileInfo[Membership.GetUser().UserName] != null)
Последняя моя идея - хранить коллекции, потому что я думаю, что прочиталони обнуляются.В моем случае мне не нужна коллекция, но это может быть самым простым решением.С нетерпением ждем предложений ... Мне кажется, что я, должно быть, упускаю что-то очевидное в этом вопросе.
Для ясности
это не работает (если http.context.profile.mydata! =нуль)