계속 하시겠습니까? this 질문부터, 모든 차량이 Person에 대해 나열된 양식이 있고 차량 필드를 편집 할 수 있으며 이제 내 저장 작업에 다시 게시됩니다. .UpdateModel을 사용하여 하위 레코드를 게시하는 ASP.NET MVC
이제 UpdateModel을 사용하여 데이터를 저장하고 싶습니다. 그러나 데이터 작성 방법을 잘 모르겠습니다. 여기 내 저장 작업이 바로 지금이다 : 나는 이것을 실행하면 아무것도 저장하지 않으며, UpdateModel에 오류가 발생하지 않습니다
<ActionName("Edit"), AcceptVerbs(HttpVerbs.Post)> _
Function Save(ByVal form As Person, ByVal vehicles() As Vehicle) As ActionResult
Dim original = From v In MyDataContext.Vehicles Where v.person_id = Person.person_id
For Each item In original
For i = 0 To vehicles.Count - 1
If vehicles(i).vehicle_id = item.vehicle_id Then
UpdateModel(item, New String() {"license_nbr", "color"})
Exit For
End If
Next
Next
MyDataContext.SubmitChanges()
Return RedirectToAction("Index", "Home")
End Function
. UpdateModel은 각 업데이트에 사용할 차량 배열의 항목을 알지 못하기 때문에 마법을 작동시키기 위해 좀 더 방향을 제시해야한다고 가정합니다.
UpdateModel의 세 번째 매개 변수로 ValueProviderResult를 지정해야합니까? 그렇다면 어떻게 차량 중 하나를 만들 수 있습니까? 나는 이걸 어떻게 셋업 했는가?
나는 확실히 할 수 있지만, 전체적으로 UpdateModel에 대해 그 논쟁을 할 수는 없습니까? 반대하거나 반대하는, 그냥 배우기. – gfrizzle
일반적으로 모델 바인딩을 사용하지 않을 때 UpdateModel을 사용할 것입니다. 즉, 매개 변수가 없거나 메서드에 대한 id 매개 변수 만 있으며 ValueProvider에서 UpdateModel을 통해 값을 직접 가져옵니다. 바운드 모델이 이미있는 경우 UpdateModel을 사용하는 것이 타당하지 않을 것이라고 생각합니다. – tvanfosson