值 'XXX.yyyyy' 的格式无效

The format of value 'XXX.yyyyy' is invalid

我正在尝试如下设置 if-match header 并使用 System.Net.Http:

中可用的 HttpClient
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

var adobeRequest = new HttpRequestMessage(HttpMethod.Put, new Uri(url))
{
    Content = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8, "application/json")
};

if (!string.IsNullOrEmpty(Etag))
    adobeRequest.Headers.Add("If-Match", Etag);

var response = client.SendAsync(adobeRequest);

我在之前的 (Get) 调用中从 adobe 收到的 Etag 是:

64E8BBA87ACFD0C2C84AF6E1193A3761.5334C3A18AB5A054FF3DBC33AFBDF6C

因此,当我尝试为 Put 请求添加相同内容时,出现以下错误:

The format of value '64E8BBA87ACFD0C2C84AF6E1193A3761.5334C3A18AB5A054FF3DBC33AFBDF6C' is invalid.

如何解决这个问题?它清楚地表明格式无效,但我相信 Adob​​e 的 api 正被数百万人使用。所以不知何故这是我的事情。

Link 对于 Adobe api

改用adobeRequest.Headers.TryAddWithoutValidation