C# 如何使用System.Net.Http.HttpRequestMessage检索Cookie

C# 如何使用System.Net.Http.HttpRequestMessage检索Cookie,c#,.net,http,cookies,C#,.net,Http,Cookies,我有这个功能: [HttpPost] [Route("api/authenticate")] public async Task<HttpResponseMessage> Authenticate(Auth a) { var cookies = Request.Headers.GetCookies() } 但是我没有看到FirstOrDefault方法。当我运行GetCookies时,我得到了一个包含一个元素的字符串数组,其中包括: "

我有这个功能:

   [HttpPost]
   [Route("api/authenticate")]
   public async Task<HttpResponseMessage> Authenticate(Auth a)
   {
       var cookies = Request.Headers.GetCookies() 
   }
但是我没有看到FirstOrDefault方法。当我运行GetCookies时,我得到了一个包含一个元素的字符串数组,其中包括:

"{cookieKey=cookieValue; cookie2=cookie2}"
我应该把这个字符串转换成字典,还是API上缺少了什么

很老套,但很管用

using System.Linq;

var cookies = Request.Headers
    .GetCookies()[0].Cookies
    .ToDictionary(cookie => cookie.Key, cookie=> cookie.Value);

return cookies["cookie-index"];


API怎么就没有这方面的东西?
using System.Linq;

var cookies = Request.Headers
    .GetCookies()[0].Cookies
    .ToDictionary(cookie => cookie.Key, cookie=> cookie.Value);

return cookies["cookie-index"];
HttpContext.Current.Request.Cookies.Get(CookieName);