案例:我正在使用EF6和WebApi控件来存储我的结果
public class Profile
{
public string ZipFile { get; set; } // input parameter
[ConcurrencyCheck]
public Guid Id { get; set; } // output parameter generated by Web API
public string Name { get; set; } // output parameter from Profile XML file
public string Description { get; set; } // output parameter from Profile XML file}
所以我使用ConcurrencyCheck生成带有odataV4的etag
正如你在那里看到的那样
问题:在我的客户端,我使用HttpClient,如下所示
public static string GetAsJsonAsync(string route)
{
string result = string.Empty;
try
{
var fullRoute = PrepareHttpRequest(route);
var client = new HttpClient();
using (HttpResponseMessage response = client.GetAsync(fullRoute).Result)
{
result = response.Content.ReadAsStringAsync().Result;
response.EnsureSuccessStatusCode();
}
}
catch (Exception ex)
{
throw new HttpRequestException(result, ex);
}
return result;
}
响应标头if-match和etag总是,我不知道如何解析“@ odata.etg”值, 所以我的问题是我如何解析etag值并存储它?
答案 0 :(得分:0)
对于将来的参考,解决方案是附加到您的模型[JsonProperty("@odata.etag")]