Инкапсуляция коллекции в RavenDB - PullRequest
0 голосов
/ 10 сентября 2018

Как запросить инкапсулированные коллекции в 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")] в частную коллекцию, но есть ли лучший способ сделать это? Может быть, определить соглашение?

...