Question: My first C#/Xaml-experience was Windows Phone 8 where navigation worked like this:

```
NavigationService.Navigate(new Uri("/MyPage.xaml", UriKind.Relative));

```

Which meant that I could replace the String "/MyPage.xaml" by anything I needed and go to that page.

Is something similar possible with Windows Store Apps?

```
this.Frame.Navigate(typeof(MyPage), UriKind.Relative);

```

MyPage isn't a string here so I can't simply replace it while the app is running. Still any way to do this?

What I am doing is:
I use a ListBox that gets it's data from a bound viewModel. There I wanted to store the target where the app should navigate to after a `SelectionChanged` Event is fired.

Answer: 
As of now (mongodb 4), you can do the following:

mongo shell:

```
db.getCollection('users')
  .find({})
  .collation({'locale':'en'})
  .sort({'firstName':1});

```

mongoose:

```
Users.find({})
  .collation({locale: "en" })
  .sort({name: 1})
  .exec()
  .then(...)

```

Here are [supported languages and locales](https://docs.mongodb.com/manual/reference/collation-locales-defaults/#collation-languages-locales) by mongodb.
If you want to sort and return all data in a document, you can add `document: "$$ROOT"`

```js
db.collection.aggregate([
  { 
    $project: {
      field: 1,
      insensitive: { $toLower: "$field" },
      document: "$$ROOT"
    }
  },
  { $sort: { insensitive: 1 } }
]).toArray()

```