Вернуть словарь со значением объекта в OrmLite - PullRequest
0 голосов
/ 15 октября 2018

Возможно ли в ServiceStack OrmLite вернуть словарь ключ-значение со значением, являющимся объектом (класс или анонимный тип)?

Например:

var q = db.From<Customers>()
          .Select(c => new { c.CustomerId, (c.FullName, c.Address) });

var list = db.Dictionary<int, object>(q);

В этом случаеЯ хочу, чтобы ключ элемента Dictionary был CustomerId, а значение - объектом с двумя свойствами: FullName и Address.

. Я буду сериализовать словарь в JSON, используя Newtonsoft.Jsonдля поиска на стороне клиента с помощью ключа.

1 Ответ

0 голосов
/ 15 октября 2018

Вы не можете сделать проекцию Tuple в SqlExpression, вы будете использовать ее для выбора нужных столбцов:

var q = db.From<Customers>()
      .Select(c => new { c.CustomerId, c.FullName, c.Address });

Затем вы можете использовать синтаксис Tuple C # 7 для выбора пользовательскогостолбцы , например:

var rows = db.Select<(int id, string name, string address)>(q);
...