Как запросить инкапсулированные коллекции в RavenDB?
то есть
У меня есть следующий класс:
public class Tenant:AggregateRoot
{
... other non-relevant properties
private List<User> _users {get;set;} = new List<User>();
public IReadOnlyList<User> Users { get { return _users.AsReadonly(); }}
public void AddNewUser(UserData data)
{
...some business logic
...create new User and add it into _users collection;
}
}
И когда я хочу запросить, я хочу это так:
session.Query<Tenant>().Where(x=>x.Users.Any(y=>y.Username == "some_user_name")).ToList();
Проблема в том, что этот запрос пытается найти свойство Users, но JSON содержит свойство "_users
".
Я знаю, что могу поместить [JsonProperty("Users")]
в частную коллекцию, но есть ли лучший способ сделать это? Может быть, определить соглашение?