首页 > 解决方案 > 使用 C# 的异常检测器

问题描述

我正在使用带有 .NET 5 的异常检测器和此处的代码

Main 方法的签名应该是什么?目前是

public  async Task Main(string[] args)

我收到这些错误消息:

无法将类型 void 转换为 system.guid

严重性代码 描述 项目文件行抑制状态错误 CS1997 由于 'Pr​​ogram.trainAsync(AnomalyDetectorClient, string, DateTimeOffset, DateTimeOffset, int)' 是返回 'Task' 的异步方法,因此 return 关键字后面不能跟对象表达式。您是否打算返回“任务”?异常检测器快速启动多变量 C:\CognitiveSvs\Anomalies\anomaly-detector-quickstart-multivariate\Program.cs 116 活动

此外,还有一个使用 Azure.Core.TestFramework 的语句;这似乎不存在。我应该用什么代替它?

是否有任何样本数据可用于单变量和多变量分析?

标签: c#azure-cognitive-services

解决方案


我认为示例代码不正确(或未正确显示)。

错误与方法无关,而与Main方法有关trainAsync

CS1997 自“计划”以来。trainAsync (AnomalyDetectorClient, string, DateTimeOffset, DateTimeOffset, int)' 是一个返回 'Task' 的异步方法,return 关键字后面不能跟对象表达式。您是否打算返回“任务”?异常检测器快速启动多变量 C:\CognitiveSvs\Anomalies\anomaly-detector-quickstart-multivariate\Program.cs 116

在您的链接中描述如下:

private async Task trainAsync(AnomalyDetectorClient client, string datasource, DateTimeOffset start_time, DateTimeOffset end_time, int max_tryout = 500)
{
...

根据您收到的错误消息、文档的来源和方法的实际代码(返回 a Guid),这是该trainAsync方法的正确签名:

private async Task<Guid?> trainAsync(AnomalyDetectorClient client, string datasource, DateTimeOffset start_time, DateTimeOffset end_time, int max_tryout = 500)
{
...

推荐阅读