2

我在 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 的下拉列表。

4

1 回答 1

3

试试这个:

@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

于 2013-07-30T08:46:20.100 回答