0

문제점 : 업데이트 단추를 클릭하면 컨트롤러를 호출하지 않습니다. 하지만 Create/Read/Destroy와 동일한 작업이 가능합니다. 뭐라구? 저에게 알려주세요.검도 표 Command.Edit() 컨트롤러에 발사하지 않음

코드보기 :

@(Html.Kendo().Grid<Model>() 
     .Name("XGrid") 
     .HtmlAttributes(new { style = "height: 525px;" }) 
     .Columns(columns => 
     { 
      //Columns... 

     }) 
     .Editable(editable => editable.Mode(GridEditMode.InLine)) 
     .ToolBar(toolbar => 
     {    
       toolbar.Create();    
     }) 
     .Pageable() 
     .Sortable() 
     .Scrollable() 
     .Filterable() 
     .Events(events => 
     { 
      events.Edit("onEdit"); 
      events.Save("onSave"); 
     }) 
     .Selectable(selectable => selectable.Type(GridSelectionType.Row)) 
     .DataSource(dataSource => dataSource 
      .Ajax() 
      .PageSize(12) 
      .ServerOperation(true) 
      .Model(model => 
      { 
       model.Id(ex => ex.User_ID);     
      }) 
      .Update(update => update.Action("UpdateUser", "ViewUser")) 
      .Read(read => read.Action("UsersRetreive", "ViewUser")) 
      .Create(create => create.Action("CreateUser", "ViewUser")) 
     ) 
    ) 

컨트롤러 코드 :

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult UpdateUser([DataSourceRequest] DataSourceRequest request,Login objUpdate) 
    {    
      if (ModelState.IsValid) 
      { 
       //Saving Code          
      } 
      else 
       return Json(objUpdate); 
     }    
+0

조치 방법을 전혀 사용하지 않거나 결과를 반환하지 않습니까? –

+0

그것의 행동에 전혀 타격을하지 않는다 ... : ( –

+0

@ mmillican 어떤 생각이 문제가 될 수 있는지에 대한 Thx ???? –

답변

0

시도이 같은 조치 방법에 HttpPost 속성을 추가 :

[HttpPost] 
public ActionResult UpdateUser([DataSourceRequest] DataSourceRequest request,Login objUpdate) 
{ 
} 

검도가 전송되는 POST 및 현재 방법은 GET req 만 수락합니다. 유익하다. 또한

는, 메소드가 반환되어 있는지 확인합니다 :

return Json(objUpdate.ToDataSourceResult(request, ModelState)); 
+0

나는 벌써 그걸 시도 했었지만 행운은 없었다. (실제로 컨트롤러 메서드에서 [AcceptVerbs (HttpVerbs.Post)]를 언급하는 것을 잊었다. ... 코드를 수정했다. –

+0

'Login'매개 변수가 맞습니까? 다른 사람들과 똑같이 지나가고 있습니까? 작동해야하는 것처럼 보이지만 위의 대답을 확인하기 위해 다른 것을 추가했습니다. –

1

GridEditMode .Inline를 들어, 데이터를 저장 toolbar.Save()를 사용해야하고

0

물론 컨트롤러를 공격, 그것은하지 않습니다 이벤트를 변경할 때까지 모든 인라인 셀의 한 문자를 누르십시오. 수정을하지 않으면 행동에 부딪치지 않습니다.

관련 문제