2010-10-17 3 views
1

Я довольно новичок в службах Silverlight и RIA, и я пытаюсь создать небольшой проект, чтобы понять его. Поэтому в основном я создал бизнес-приложение, и у меня есть обычный экран входа в систему, где я могу добавить пользователя. Это нормально, и я могу добавить пользователя и забрать его в таблицу aspnet_Users. Теперь я создал несколько дополнительных полей, таких как Mob No, Tel No, DOB, Locality и т. Д., Которые я ввел в созданную мной таблицу под названием UserProfile, и моя идея - получить имя пользователя, которое было зарегистрировано, и вставить его в мою таблицу UserProfile с другими соответствующими данными.Получение данных профиля пользователя в Silverlight 4

Итак, я создал страницу с именем Profile.xaml, я создал UserProfileDomainService.cs, где у меня есть только один запрос, чтобы получить данные профиля пользователя из таблицы, а затем создал DataGrid на моей странице и QueryName в моем случае GetUserProfilesQuery(). Теперь я хочу, чтобы пользователь вошел в систему, получил свое имя пользователя и проверил в моей таблице, чтобы увидеть, есть ли в таблице данные. Если в DataGrid заполнены поля данных, чтобы пользователь мог изменить эти данные, а если нет, разрешите пользователю вставлять данные в таблицу.

Итак, я создал класс UserProfileViewModel, и я хочу создать запрос, чтобы получить данные, относящиеся к этому пользователю. Однако я застрял на том, как это сделать, и как заставить пользователя войти в систему.

Может ли кто-нибудь дать мне несколько советов или указать мне на некоторые уроки о том, как я могу это достичь?

Большое спасибо, и ваша помощь очень ценится.

ответ

0

В запросе службы домена вы можете использовать ServiceContext.User.Identity.Name, чтобы получить информацию, специфичную для этого пользователя, для включения в ваш запрос db. Я делаю что-то подобное в нашем проекте.

Мы используем рамки сущности поэтому LINQ к Entities запроса выглядит следующим образом:

return this.ObjectContext.UserSnapins 
     .Include("Snapin.EvolutionModule") 
     .Where(si => si.User.UserName == ServiceContext.User.Identity.Name) 
     .OrderBy(si => si.PageOrder); 
Смежные вопросы