2013-07-30 53 views
2

我正在MVC中生成一个下拉列表。我有一个视图中有两个列表值的模型。我的代码看起来像Razor中的条件DropdownList MVC

@Html.DropDownList("Test", new SelectList(
          Model.Test.Where(i=>i.Id = *from other list*), "Id", "Name")) 

在我的模型,我有两个解释: List<Test>List<Test2>。我正在尝试生成下拉列表,其中Test1.Id等于Test2.Id。

回答

2

试试这个:

@Html.DropDownList("Test", new SelectList(
    Model.Test.Where(i=>Model.Test2.Any(ii=> i.Id == ii.Id)), "Id", "Name")) 

例与Any声明:

static void Main(string[] args) 
    { 
     List<string> listA = new List<string>() { "A", "B", "C" }; 
     List<string> listB = new List<string>() { "D", "F", "A", "B", "E" }; 

     var result = listB.Where(lb => listA.Any(la => la == lb)); 
     Console.WriteLine(result.Count()); 
    } 

结果:2

+2

希望它帮助:) – FSou1