SQL и Entityframework, не могу получить желаемый результат - PullRequest
0 голосов
/ 13 сентября 2011

У меня есть 2 вопроса, один о SQL и один о Entity Framework:

У меня есть таблица «UserSet» со всей информацией о пользователе; и у меня есть таблица «FriendRequests», которая обрабатывает информацию UserID и FriendID. Мой текущий пользователь "rugardini". Мне нужно перечислить запросы друзей. Итак, я сделал такой запрос только для целей тестирования:

select fq.FriendID, u.Nickname from 
FriendRequestsSet as fq, UserSet as u 
where fq.UserID=16

Но мой результат такой:

| FriendID | Nickname |
------------------------
|   17     |rugardini |
|   17     |  Teste   |

== отредактировано ====================

Теперь я понимаю, что мой запрос должен быть:

SELECT u.ID, u.Nickname
FROM UserSet as u, FriendRequestsSet as f
WHERE u.ID=f.FriendID
ORDER BY u.ID

Я получаю правильный результат ^^ Мне все еще нужно знать, как "перевести" его в EF4.1?

Ответы [ 2 ]

0 голосов
/ 13 сентября 2011

для использования этого запроса вы хотели бы использовать разные столбцы из каждой таблицы для создания нового представления (как мы делаем в sqlserver). Нам нужно создать Viewmodel в MVC, который будет представлять столбцы

     public class FriendRequest
         {
              int col1{get;set;}
              int col2{get;set;}
              //Here comes the Column You Want To Consider For your View Model
         }

      var list=from u in USerSet
         join f in FriendRequestsSet
         on u.ID=f.FriendID
         ORDERBY u.ID
         select new FriendResquest{Col1=u.ID,col2=u.Nickname}
         //Here by map your columns as declared in your view model
0 голосов
/ 13 сентября 2011

Рубия в Линке почти такая же

    from u in USerSet
    join f in FriendRequestsSet
    on u.ID=f.FriendID
    ORDERBY u.ID
    select new {u.ID,u.Nickname}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...