CollectionName.find({
created_at: {
$gte:$mongostartdate,
$lt: mongoenddate
}
})
Вы можете использовать EventAggregators для достижения этой цели.
Для тех, кто незнаком, Event Aggregator - это служба, которая предоставляет возможность публиковать объект от одного объекта к другому свободно основанным образом.
blockquote>Подробнее об агрегаторах событий можно прочитать здесь
Вы начинаете с определения своего CustomMessage, которое будет содержать сообщение, которое нужно передать.
public class CustomMessage { public string String1 { get; set; } }
Теперь вы переходите к ParentViewModel и создаете экземпляр агрегатора событий.
private IEventAggregator _eventAggregator; [ImportingConstructor] public ShellViewModel(IEventAggregator eventAggregator) { _eventAggregator = eventAggregator; _eventAggregator.Subscribe(this); }
В установщике вашего свойства, которое привязано к вашему текстовому полю, вы теперь добавите код для публикации сообщения с помощью Event Aggregator.
Например,
public string String1 { get => _string1; set { if (_string1.Equals(value)) return; _string1 = value; _eventAggregator.PublishOnUIThread(new CustomMessage { String1 = _string1, }); } }
Теперь вы направляетесь к своей модели детского представления и подписываетесь на агрегатор событий.
private IEventAggregator _eventAggregator; [ImportingConstructor] public SecondWinViewModel(IEventAggregator eventAggregator) { _eventAggregator = eventAggregator; _eventAggregator.Subscribe(this); }
Чтобы подписаться на конкретное сообщение (в данном случае CustomMessage), вам необходимо реализовать интерфейс IHandle.
[Export(typeof(SecondWinViewModel))] public class SecondWinViewModel : Screen, IHandle<CustomMessage>
Для интерфейса требуется один метод, который вы бы использовали для получения сообщения и обновления обязательного свойства в вашем дочернем окне.
public void Handle(CustomMessage message) { String1 = message.String1; NotifyOfPropertyChange(nameof(String1)); }
Вы можете сделать то же самое для нескольких параметров, добавив больше свойств в ваше CustomMessage. Таким же образом вы можете передавать сообщения от Child Vm к Parent Vm.