2014-06-25 3 views
0

LLBLGen 어댑터 모델을 사용하여 결과를 반환합니다. 검도 그리드를 아직 채울 수 없기 때문에 중단 점을 사용합니다. 나는 그들이 모두 돌아 오는 것을 볼 수 있습니다. 그러나 어제와 이전의 날짜 속성이있는 결과 만 반환해야합니다. 나는 kendo grid 나 LLBL adapter를 사용하는 것에 익숙하지 않다. 다른 많은 예제들은 엔티티 프레임 워크를 사용하고 있습니다. 여기 내가 지금까지 가지고있는 것이있다. 필터를 설정하는 방법이 달라 붙어 오류 메시지가 표시되지 않습니까?어제 날짜 이전의 결과를 반환하는 방법

컨트롤러

public ActionResult BundleStatus() 
    { 
     return View(); 

    } 

    [HttpPost] 
    public ActionResult BundleStatusRead([DataSourceRequest] DataSourceRequest request) 
    { 

      var span = DateTime.Today.AddDays(-1); 
      DataAccessAdapter adapter = new DataAccessAdapter(); 
      EntityCollection allBundles = new EntityCollection(new CarrierBundleEntityFactory()); 
      adapter.FetchEntityCollection(allBundles, null); 
      var results = allBundles; 

     return Json(results.ToDataSourceResult(request)); 
    } 

} 

보기

@{ 
ViewBag.Title = "BundleStatusGet"; 
    } 

<div> 
@(Html.Kendo().Grid<ZoomAudits.DAL.EntityClasses.CarrierBundleEntity>() 
    .Name("grid") 
    .Columns(columns => 
    { 
     columns.Bound(c => c.BundleId).Width(140); 
     columns.Bound(c => c.CarrierId).Width(190); 
     columns.Bound(c => c.Date); 
     columns.Bound(c => c.IsSent).Width(110); 
    }) 
    .HtmlAttributes(new { style = "height: 380px;" }) 
    .Scrollable() 
    .Groupable() 
    .Sortable() 
    .Pageable(pageable => pageable 
     .Refresh(true) 
     .PageSizes(true) 
     .ButtonCount(5)) 
       .Selectable(selectable => selectable 
       .Mode(GridSelectionMode.Multiple) 
       .Type(GridSelectionType.Cell)) 
      //.Events(events => events.Change("onChange").Sync("sync_handler"))) 
    .DataSource(dataSource => dataSource 
     .Ajax() 
     .Read(read => read.Action("BundleStatusRead", "BundleStatus")) 
       //.Update(update => update.Action("EditingInline_Update", "Grid")) 
    ) 
) 

업데이트 컨트롤러

public ActionResult BundleStatusRead([DataSourceRequest] DataSourceRequest request) 
    { 

      var span = DateTime.Today.AddDays(-1); 
      DataAccessAdapter adapter = new DataAccessAdapter(); 
      EntityCollection allBundles = new EntityCollection(new CarrierBundleEntityFactory()); 
      RelationPredicateBucket filter = new RelationPredicateBucket(CarrierBundleFields.Date == span); 
      adapter.FetchEntityCollection(allBundles, filter); 
      var results = allBundles; 

     return Json(results.ToDataSourceResult(request)); 

이 어떤 결과를 반환하지 않습니다? 이것은 내가 var 결과에서 중단 점을 열 때 볼 수 있습니다. LLBL Enumeration 결과가 없습니다.

답변

0

안녕하세요. LLBLGen을 잠시 사용하지 않았으며 어댑터 이전이었습니다. 그러나 EntityCollection<T> 클래스 LLBLGen 용 어댑터 사용에 대한 this 설명서를 찾았습니다. 희망이 도움이됩니다.

그런데 [HttpGet]을 사용하고 동작 결과를 get을 허용하도록 설정할 수도 있습니다.

return Json(results.ToDataSourceResult(request)), JsonRequestBehavior.AllowGet); 

것은 어제를 얻기 위해 노력하고있다 이전 후 사용하는 경우 :

RelationPredicateBucket filter = new RelationPredicateBucket(CarrierBundleFields.Date <= span); 
+0

이 한 단계 더 저를 얻었다. 내 생각 엔? 어제 날짜가 정확한 응답이 될 데이터가 데이터베이스에없는 경우 내 편집 – user3750212

+0

을 확인하십시오. 옳은? 어제와 이전에 어떻게 설정합니까? – user3750212

+0

답변을 가능한 해결 방법으로 업데이트하십시오. –