[]
ODataCollectionView 클래스는 컨트롤을 OData 소스에 연결하는 간단한 방법을 제공합니다. ODataCollectionView를 생성하면 소스의 데이터 로드가 시작됩니다.
ODataVirtualCollectionView는 ODataCollectionView를 확장하여 온디맨드(on-demand) 데이터 로드를 제공합니다. 서버에서 데이터를 자동으로 로드하지 않습니다. 대신 요청 시 setWindow 메서드에 의존하여 데이터프래그먼트 (창)을 로드합니다.
예시:
import * as wjCore from '@mescius/wijmo';
import * as wjOdata from '@mescius/wijmo.odata';
import * as wjGrid from '@mescius/wijmo.grid';
// get order details into an ODataCollectionView
var url = 'https://services.odata.org/Northwind/Northwind.svc';
var table = 'Order_Details_Extendeds';
// get order details into a ODataVirtualCollectionView
var virtualDetails = new wjOdata.ODataVirtualCollectionView(url, table, {
loaded: function(sender, e) {
var el = document.getElementById('totalItemCount');
el.innerHTML = wjCore.format('{totalItemCount:n0} items', sender);
}
});
// show the data on a grid
var theVirtualGrid = new wjGrid.FlexGrid('#theVirtualGrid', {
itemsSource: virtualDetails, // ODataVirtualCollectionView
isReadOnly: true, // this service is read-only
formatItem: function(s, e) { // show row indices in row headers
if (e.panel.cellType == wjGrid.CellType.RowHeader) {
e.cell.textContent = e.row + 1;
}
},
scrollPositionChanged: function () {
var rng = theVirtualGrid.viewRange;
virtualDetails.setWindow(rng.row, rng.row2);
}
});