C# 使用DropDownListFor的相关下拉列表

C# 使用DropDownListFor的相关下拉列表,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,我在MVC Razor视图中看到两个下拉列表: @Html.DropDownListFor(x => x.SelectedPrefix, Model.GetAssignablePrefixes() , new { @id = "prefixDropDown" }) @Html.DropDownListFor(x => x.SelectedSuffix, Model.GetAssignableSuffixes(Model.SelectedPrefix) , new { @id = "

我在MVC Razor视图中看到两个下拉列表:

@Html.DropDownListFor(x => x.SelectedPrefix, Model.GetAssignablePrefixes() , new { @id = "prefixDropDown" }) 
@Html.DropDownListFor(x => x.SelectedSuffix, Model.GetAssignableSuffixes(Model.SelectedPrefix) , new { @id = "suffixDropDown" })
选择第一个下拉列表应根据在第一个下拉列表中选择的值更改第二个下拉列表的内容。(因此调用getAssignableSuffix(Model.SelectedPrefix)方法)

由于有相当复杂的计算,我不想把所有的逻辑都放到JavaScript方法中


我在SO发现了一些“相当”的类似问题,但DropDownListFor没有。是否有一种方法可以在首次呈现页面时在服务器上评估DropDownListFor。您必须至少部分地在客户端执行此操作。当第一个下拉列表更改时,可以通过执行AJAX调用将计算推送到服务器上,然后使用AJAX调用返回的结果填充第二个下拉列表