Method that returns Task<string> : <p>I need a method that returns a <code>Task&lt;string&gt;</code> with empty string like</p>

<pre><code>public static Task&lt;string&gt; AsyncTest()
{    
     return new Task&lt;string&gt;(() =&gt; string.Empty); //problem here

     // this method would work:
     // return new WebClient().DownloadStringTaskAsync(@"http://www.google.de");   
}

public static void Workdl(string input)
{
    Console.Write("OUT: " + input.Substring(0, 100));
}
</code></pre>

<p>This snippet compiles but when I call it like</p>

<pre><code>Task&lt;string&gt; dlTask = AsyncTest();
Workdl(await dlTask);
await Task.WhenAll(dlTask); //Task never completes 
</code></pre>

<p>it never determines.</p>
