Я новичок в концепции NoSql. Исходя из мышления «ModelFirst», я обычно сначала проектирую свои модели. У меня есть модель следующим образом.
public class Book
{
public string Name { get; set; }
[EntityPropertyConverter(typeof(Category))]
public List<Category> Categories { get; set; }
}
public class Category
{
public string Name { get; set; }
}
Студенческий класс сложного типа и
[EntityPropertyConverter]
Атрибут
помогает сериализовать категории перед записью в таблицу Azure и десериализовать при обратном чтении.
Книга может принадлежать к нескольким категориям. Мой вопрос: если кто-то должен искать книгу по одной из n категорий, как мы можем это сделать.
Таблица Azure поддерживает запросы, подобные приведенным ниже
TableQuery.GenerateFilterCondition("Categories", QueryComparisons.Equal, JsonConvert.SerializeObject(???))
Но с этим я не могу получить требуемый результат.
пожалуйста, прокомментируйте, если мой общий подход неверен.