Пример #1
0
require_once 'urldef.php';
echo "<h3>Sample3: List all cutomer's ID in NorthWind DB with USA as Country and associated Order's ID using LoadProperty and Server Side paging</h3>";
try {
    $svc = new NorthwindEntities(NORTHWIND_SERVICE_URL);
    $query = $svc->Customers()->filter("Country eq 'USA'");
    $customerResponse = $query->Execute();
    $nextCustomerToken = null;
    do {
        if ($nextCustomerToken != null) {
            $customerResponse = $svc->Execute($nextCustomerToken);
        }
        foreach ($customerResponse->Result as $customer) {
            echo '<br/>CustomerID: ' . $customer->CustomerID . "<br/>";
            $nextOrderToken = null;
            echo "<br/>Associated Orders <br/>";
            echo "-----------------------<br/>";
            do {
                $ordersResponse = $svc->LoadProperty($customer, 'Orders', $nextOrderToken);
                foreach ($customer->Orders as $order) {
                    echo "     " . $order->OrderID . "<br/>";
                }
            } while (($nextOrderToken = $ordersResponse->GetContinuation()) != null);
        }
    } while (($nextCustomerToken = $customerResponse->GetContinuation()) != null);
} catch (DataServiceRequestException $ex) {
    echo 'Error: while running the query ' . $ex->Response->getQuery();
    echo "<br/>";
    echo $ex->Response->getError();
} catch (ODataServiceException $e) {
    echo "Error:" . $e->getError() . "<br>" . "Detailed Error:" . $e->getDetailedError();
}