2014-03-28 59 views
0

我需要从列表中获取项目,但是需要从另一个ID列表中过滤ID。这是我的代码,我无法弄清楚问题所在。请帮忙吗?从另一个列表中获取列表过滤器中的项目

var lstStatus = new List<int> {(int) SurveyRequestConstants.EnumSurveyRequestStatus.Open, 
      (int) SurveyRequestConstants.EnumSurveyRequestStatus.InProgress, 
      (int) SurveyRequestConstants.EnumSurveyRequestStatus.OnHold}; 
var surveyRequestList = SurveyRequestRepository.Queryable().AsEnumerable().ToList(); 
var surveyRequests = (from first in surveyRequestList 
         join second in lstStatus 
         on first.SurveyRequestStatus.Id equals second 
         select new ListItem(string.Format("{0} {1} {2}", 
                 first.Id.ToString(), 
                 first.Tenant.TenantLabel, 
                 first.CreatedDate), 
                 first.Id.ToString())).ToList(); 
+2

究竟是什么让你觉得这是一个问题?什么行为不如预期? –

+0

提示:不要发布在运行时不会运行的代码!我们没有SurveyRequestConstants,SurveyRequestRepository ... – sprinter252

+0

我在期待来自surveyRequestList列表中包含lstStatus列表的值。状态ID集合中的lstStatus列表用于过滤surveyRequestList中的结果 – user3472262

回答

0

这里来过滤lstStatus基于项目

var surveyRequests = surveyRequestList 
.Where(x => lstStatus 
.Any(y => y == x.Id)) 
.Select(x => new ListItem(string.Format("{0} {1} {2}", 
             first.Id.ToString(), 
             first.Tenant.TenantLabel, 
             first.CreatedDate), 
             first.Id.ToString())); 

希望这是你在找什么surveyRequestList代码?

相关问题