Информация об изменениях

Сообщение Re[37]: EntityFramework - тормоз от 22.04.2015 15:53

Изменено 22.04.2015 16:00 Evgeny.Panasyuk

Здравствуйте, Sinclair, Вы писали:

S>Ок, я понял. Обстоят чуть хуже, чем никак:

S>
S>    auto x = select(apples.appleId, oranges.orangeId); // WTF is x???
S>


Это же простой пример не претендующий на полноту. При желании можно получить например такой синтаксис:
class Suppliers;

TABLE
(
    Products,
    (string, ProductName)
    (money,  UnitPrice)
    (Suppliers*, supplier)
);

TABLE(
    Suppliers,
    (string, CompanyName)
    (string, Address)
    (many<Products>, products)
);

// ...
{
    auto q = select(Suppliers::CompanyName, Products::ProductName).where(Products::UnitPrice > 11); // auto join
    for(const auto &x : q.execute())
        cout << x.CompanyName << " " << x.ProductName << endl;
}
Здравствуйте, Sinclair, Вы писали:

S>Ок, я понял. Обстоят чуть хуже, чем никак:

S>
S>    auto x = select(apples.appleId, oranges.orangeId); // WTF is x???
S>


Это же простой пример не претендующий на полноту. При желании можно получить например такой синтаксис:
class Suppliers;

TABLE
(
    Products,
    (string, ProductName)
    (USD,  UnitPrice)
    (Suppliers*, supplier)
);

TABLE(
    Suppliers,
    (string, CompanyName)
    (string, Address)
    (many<Products>, products)
);

// ...
{
    auto q = select(Suppliers::CompanyName, Products::ProductName).where(Products::UnitPrice > 11.99_USD); // auto join
    for(const auto &x : q.execute())
        cout << x.CompanyName << " " << x.ProductName << endl;
}