LINQ Group by - linq для сущностей не распознает метод char get_chars (int32)

Эта страница на официальном сайте mongodb адресует точно этот вопрос:

http://docs.mongodb.org/ecosystem/tutorial/model-data- for-ruby-on-rails /

Когда мы показываем наш список историй, нам нужно будет показать имя пользователя, разместившего историю. Если бы мы использовали реляционную базу данных, мы могли бы выполнить соединение с пользователями и магазинами и получить все наши объекты в одном запросе. Но MongoDB не поддерживает объединения, и поэтому время от времени требуется бит денормализации. Здесь это означает кеширование атрибута «имя пользователя».

Реляционные пуристы уже чувствуют себя неловко, как будто мы нарушаем какой-то универсальный закон. Но давайте иметь в виду, что коллекции MongoDB не эквивалентны реляционным таблицам; каждая из которых служит уникальной проектной цели. Нормализованная таблица обеспечивает атомный изолированный кусок данных. Однако документ более тесно представляет собой объект в целом. В случае сайта социальных новостей можно утверждать, что имя пользователя является неотъемлемой частью истории, опубликованной.

blockquote>

1
задан DavidG 17 March 2019 в 19:33
поделиться

1 ответ

Entity Framework не знает, как перевести индексатор символов в допустимый SQL. Вместо этого вы можете использовать string.Substring, например:

var output = (from p in db.Products
              group p by p.ProductName.Substring(0, 1));
0
ответ дан DavidG 17 March 2019 в 19:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: