일부 레코드를 표시하기 위해 검도 그리드 뷰를 사용하고 있습니다. 이러한 레코드는 데이터베이스에서 검색되어 같은 클래스의 목록에 저장 될 때 Json에 있습니다. 목록 수가 1000인데도 문제가 없지만 1000을 초과하는 숫자는 예외를 발생시킵니다. "JSON JavaScriptSerializer를 사용하여 직렬화 또는 비 직렬화 중에 오류 문자열의 길이가 maxJsonLength 속성에 설정된 값을 초과합니다 "검도 그리드 뷰에 1000 개가 넘는 레코드를 전달할 수 없습니다.
web.config 및 appsettings의 maxJsonLength 값을 스택 오버 플로우에서 발견 된 일부 솔루션에서 권장하는대로 변경하려고 시도했습니다. 그러나 그들 중 누구도 일하지 않습니다. 내가 JSON 내가보기에 전달 된 것은 너무 많은 복잡한 데이터 유형 (즉, 클래스 개체 및 열거)를했고, 그 솔루션의 이유도 문제가 해결되지 않았 음을 나열 것을 깨닫게되었다
@(Html.Kendo().Grid(Model)
.Name("grid")
.Scrollable()
.Filterable()
.Columns(columns =>
{
//Columns added here
})
.Selectable(selectable => selectable.Mode(GridSelectionMode.Single))
.Pageable(pageable => pageable
.Refresh(false)
.PageSizes(true)
.ButtonCount(3))
.DataSource(dataSource => dataSource
.Ajax()
.ServerOperation(false)
.Model(model =>
{
model.Id(p => p.Id);
model.Field(p => p.Id).Editable(false);
})
.Read(read => read.Action("Action", "Controller"))
.PageSize(50)
)
.Events(e => e.DataBound("selectDefault"))
'maxJsonLength'를 더 높게 설정할 수 있습니까? – devRicher
관련 없음,하지만 UI에 표시 할 레코드가 실제로 1000 개 이상 필요합니까? – Fabio
안녕하세요 @ Fabio, 예, 나는 데이터베이스에 저장된 모든 레코드를 표시해야합니다. 이를 위해 페이징을 추가했습니다. – Dannyboi