【发布时间】:2022-06-13 19:52:53
【问题描述】:
升级到 v107 后,我在 Azure 管道上收到此错误:
##[error]XXXXXXXXXXX.Shared.Integration\APIClients\XXXXXXXXXXRESTClientBase.cs(114,43):错误 CS1545:该语言不支持属性、索引器或事件“RestResponseBase.StatusCode”;尝试直接调用访问器方法 'RestResponseBase.get_StatusCode()' 或 'RestResponseBase.set_StatusCode(??)'
代码在我的笔记本电脑上编译,但由于某种原因它在管道上失败了。
可能与升级指南中的这条消息有关吗? “最重要的变化是 RestSharp 停止使用旧的 HttpWebRequest 类,而使用众所周知的 'HttpClient'。这一举措解决了很多问题,例如由于不正确的 HttpClient 实例缓存而挂起的连接、更新的协议支持以及许多其他问题。”
我正在使用仍然具有 LTS 的 .NET core 3.1。
编译失败的例子如下:
private bool RequestFailed(HttpStatusCode statusCode)
{
var result = statusCode == HttpStatusCode.InternalServerError ||
statusCode == HttpStatusCode.ServiceUnavailable ||
statusCode == HttpStatusCode.Unauthorized;
if (result) Logger.Verbose("API Call resulted in status code: " + statusCode.ToString());
return result;
}
private bool HandleResult(RestResponse response)
{
return RequestFailed(response.StatusCode);
}
哪些错误就行了:
return RequestFailed(response.StatusCode);
类似问题:
错误 CS1545:语言不支持属性、索引器或事件“Parameter.Name”
public static void SetCorrelationId(RestRequest request, Guid? correlationId)
{
var existingHeader = request.Parameters.Where(x => x.Name == CorrelationIdHeaderKey).FirstOrDefault();
...
}
【问题讨论】:
标签: .net-core azure-devops restsharp