2017-12-21 3 views
-1

asp-forVehiclePlate에 바인딩 선택 옵션 (@vehicle.Category)의 value를 얻을 수 있지만 옵션의 text을 얻으려면)을 Controller에 입력하십시오. 어떻게해야합니까? 잘못된 bindind ASP.NET MVC

select입니다 :

@model Exam 
... 
<select asp-for="VehiclePlate" id="listVehicle" data-init-plugin="select2" style="width: 100%"> 
    @foreach (var vehicle in ViewBag.Vehicles) 
    { 
     <option value="@vehicle.Category">@vehicle.Plate</option> 
    } 
</select> 

그리고 이것은 내 Controller :

[HttpPost] 
[ValidateAntiForgeryToken] 
public async Task<ActionResult> Create(Exam exam) 
{ 
    ... 
} 

답변

1

예는 ASP-항목 당신이 selectList의에 설정할 수있는 속성이있는 select 태그,

<select asp-for="VehiclePlate" asp-items='new SelectList(ViewBag.Vehicles, "Plate", "Plate")'> 
</select> 

"Plate", "Plate"부분은 Select가 Plate를 값으로 사용한다는 것을 의미합니다. 드롭 다운의 텍스트입니다.

+0

그래,하지만이 질문에 대답하지 않습니다. – perozzo

+0

그렇다면 귀하의 질문이 무엇인지 이해하지 못합니다. 컨트롤러에서 선택한 플레이트를 가져 오시겠습니까? 그렇다면 값과 옵션의 텍스트로 둘 다 넣으십시오. – timsuldat

+0

뷰에서 카테고리가 필요합니다. 그 이유는 값에서 사용하고 있기 때문입니다.하지만 신경 쓰지 마시고, 이미 가지고 있습니다. – perozzo

관련 문제