Réglage de l'en-Tête Accept sans l'aide de MediaTypeWithQualityHeaderValue

Dans Asp.Net Web Api 2 quelle est la différence entre la création d'une HttpClient Accepter d'en-Tête suivant la méthode traditionnelle :

        HttpClient client = HttpClientFactory.Create(handler);

        client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

et la méthode suivante :

var headers = new Dictionary<string, string>
            {
                {"Accept", "application/json"}};

headers.ForEach(h => client.DefaultRequestHeaders.Add(h.Key, h.Value));

Mise à jour 1:

En fonction de la réponse par @DarrenMiller dans le post suivant, Qu'est-ce que la surcharge de la création d'un nouveau HttpClient par appel dans un WebAPI client? il semble que la meilleure méthode est l'utilisation de DefaultRequestHeaders de propriété, car il contient des propriétés qui sont destinés à plusieurs appels. Est-ce à dire si je l'ai mis par défaut de l'en-tête à l'aide d'un simple dictionnaire de mon HttpClient client ne sera pas aussi efficace que celui qui utilise DefaultRequestHeaders? En outre, j'ai vraiment cant comprendre comment les valeurs à l'intérieur de DefaultRequestHeaders sera réutilisé? Disons que j'ai créer 20 HttpClient client à l'aide de HttpClientFactory.Create et à l'intérieur de chacun d'eux, j'ai mis DefaultRequestHeaders de la propriété [Dois-je vraiment besoin de le faire parce que DefaultRequestHeaders était censé être réutilisé?!]. D'où vient cette réutilisation coup de pied dans et ne la définition de la DefaultRequestHeaders à chaque fois que je créer un HttpClient client résultat dans un certain genre de performance?

peut-être parce que vous êtes en train d'ajouter que Accept, et dans le second cas, vous êtes en train d'ajouter à un autre endroit.
La meilleure chose à faire est d'utiliser quelque chose comme Fiddler (telerik.com/fiddler) pour observer ce qui est en fait envoyé dans la demande lorsque vous faites les deux méthodes lors de la Fiddler est en cours d'exécution. Il va enregistrer le trafic HTTP et vous permettent de regarder les différences.

OriginalL'auteur MHOOS | 2015-06-04