如何使用 BeginForm 将下拉选择的名称值及其 id 值传递给控制器​​方法

how to pass dropdown selected name value and its id value using BeginForm to controller method

cshtml -

@using (Html.BeginForm("AddDevice", "Home", FormMethod.Post)) 
{
 @Html.DropDownListFor(m => m.Name, (SelectList)ViewBag.Name, "---Select Name---") 

控制器方法 -

[httpPost]
public void AddDevice(Registration registration)
        {

在 html 我可以获得这些值 -

<select name="Name" id="Name"><option value="">---Select Name---</option>
<option value="8d6d30cf-b8cd-4abd-bf38-e975e6a86542">Demo2</option>
</select> 

我希望这两个值都进入 Registration registration 我现在只得到了选定的名称。

我怎样才能获得 id 值,即 8d6d30cf-b8cd-4abd-bf38-e975e6a86542

您可以添加隐藏字段。使用 javascript 您可以将名称作为值传递到隐藏字段中。然后就可以得到隐藏字段名的数据了。