-4

linqで2つのクエリを結合する最良の方法は何ですか? 現時点では、私のコードはそれらを結合していません。

var userprofilemodel1 =
(from u in db.UserProfiles
where u.UserId == 1
orderby u.FirstName, u.LastName
select new UserListViewModel
{
   UserId = u.UserId,
   UserName = u.UserName,
   FirstName = u.FirstName,
   LastName = u.LastName,
   DocumentCount = u.Documents.Count
}).ToPagedList(page, 10);


var userprofilemodel2  =
(from u in db.UserProfiles
where u.UserId == 18
orderby u.FirstName, u.LastName
select new UserListViewModel
{
    UserId = u.UserId,
    UserName = u.UserName,
    FirstName = u.FirstName,
    LastName = u.LastName,
    DocumentCount = u.Documents.Count
}).ToPagedList(page, 10);


userprofilemodel1.Concat(userprofilemodel2);
4

1 に答える 1

2

これはそれを行う必要があるようです:

var userprofilemodel1 =
(from u in db.UserProfiles
where u.UserId == 1 || u.UserId == 18 
orderby u.FirstName, u.LastName
select new UserListViewModel
{
   UserId = u.UserId,
   UserName = u.UserName,
   FirstName = u.FirstName,
   LastName = u.LastName,
   DocumentCount = u.Documents.Count
}).ToPagedList(page, 10);

2 つの別々のクエリとして残したい/残す必要があるが、結果を連結しようとしている場合は、連結されたリストをConcat 返すことを認識する必要があります。既存のリストのいずれも変更されません。

var mergedModel = userprofilemodel1.Concat(userprofilemodel2);
于 2013-09-03T02:00:15.820 に答える