WinRT carga de datos asíncrona en el constructor

Quiero cargar algunos datos en el constructor de un ViewModel, pero debido a la naturaleza asíncrona de WinRT me veo forzado a usar métodos asíncronos. Desafortunadamente no puedo tener un constructor asíncrono, así que estoy tratando de usar el método asíncrono como un método síncrono. Estoy seguro de que hay una forma mucho mejor de cargar datos (asíncronos) en la carga de la aplicación, pero mi mente se está quedando en blanco en este momento.

O bien estoy buscando una manera de arreglar mi aplicación usando la línea de pensamiento que estoy descartando, o para solucionar esto permanentemente usando un método más apropiado.

El código es muy simple (incluso falta el ViewModel) solo para demostrar el problema que estoy enfrentando.

public sealed partial class MainPage : Page
{

    public string Data { get; set; }

    public DataService _dataService { get; set; }

    public MainPage()
    {
        this.InitializeComponent();

        _dataService = new DataService();
        var t = _dataService.GetData();

        Data = t.Result;
    }

    /// <summary>
    /// Invoked when this page is about to be displayed in a Frame.
    /// </summary>
    /// <param name="e">Event data that describes how this page was reached.  The Parameter
    /// property is typically used to configure the page.</param>
    protected override void OnNavigatedTo(NavigationEventArgs e)
    {
    }


}

public class DataService
{
    public async Task<string> GetData()
    {
        //Force async
        await Task.Delay(1);

        return "Hello";
    }
}

Saludos cordiales

Respuestas a la pregunta(2)

Su respuesta a la pregunta