2017-07-21 52 views
0

私はVS2010で以下のコードを実行しましたが、私はのVisual Studio 2010の非同期プログラミング

id = 1, status = waitingforactivation, method = "{null}", result = "{not yet computed}" 

のような問題に直面しているそして、私が検索した、非同期を有効にする必要があり、VS2010で待っています。 その後、AsyncCtpLibrary DLLリファレンスを使用して、私はそれを有効にしました。しかしまだvs2010は応答を返さない。

私はVS2012で応答を得ましたが、私はVS2010で開発されたプロジェクトでそれを実装する必要があります。

static void Main(string[] args) 
{ 
Task<string> task = GetCustomerDetails(); //PushCustomerDetails(); 
task.Wait(); 
var x = task.Result; 
} 

static async Task<string> GetCustomerDetails() 
{ 
    var httpClientHandler = new HttpClientHandler() 
    { 
     Credentials=new NetworkCredential("demo","demo"), 
    }; 

    var httpClient = new HttpClient(httpClientHandler); 
    httpClient.DefaultRequestHeaders.Accept.Clear(); 
    httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 
    var result1 = await httpClient.GetStringAsync("URL") 
    return result1.ToString(); 
} 
+2

ただ、それだけのIDEではありませんVS 2010を使用していません。 * async/awaitのサポートを導入した新しい.NETランタイムとC#コンパイラはサポートできません。コミュニティ版のVS 2017は*無料*で、VS 2010のプロフェッショナルと同等かそれ以上のものです。 *なぜ*サポートされているVisual Studio版を使用していませんか? –

+0

Visual Studioの*より新しいバージョンでは、NuGetの[Microsoft.Bcl.Async](https://www.nuget.org/packages/Microsoft.Bcl.Async/)パッケージを使用して 'async/await'を追加することができます.NET 4.0プロジェクトへのサポートそれはVS 2010をサポートしていませんが –

+0

私は行を変更しました。var result1 = await httpClient.GetStringAsync( "URL"); var result1 = httpClient.GetStringAsync( "URL")に変換します。それはうまく動作しますが、ポストメソッド呼び出しにはまだ存在します。 – Vengat

答えて

0
static void Main(string[] args) 
{ 
    Task<string> task = GetCustomerDetails(); //PushCustomerDetails(); 
    var x = task.Result; //Result is already waiting 
} 

static Task<string> GetCustomerDetails() 
{ 
    var httpClientHandler = new HttpClientHandler() 
    { 
     Credentials=new NetworkCredential("demo","demo"), 
    }; 

    var httpClient = new HttpClient(httpClientHandler); 
    httpClient.DefaultRequestHeaders.Accept.Clear(); 

    httpClient.DefaultRequestHeaders.Accept.Add(new  
MediaTypeWithQualityHeaderValue("application/json")); 
    return httpClient.GetStringAsync("URL") 
}  
関連する問題