我希望 SNS 主题触发 Eventbridge 事件,以便我可以调用 ECS 任务。我尝试将 Eventbridge 规则连接到 SNS 主题,如下所示(这是我的 eventbridge 规则的事件模式):
{
"source": [
"aws.sns"
],
"region": [
"eu-west-1"
],
"resources": [
"arn:aws:sns:eu-west-1:xxx:myTestTopicForECS"
]
}
Run Code Online (Sandbox Code Playgroud)
但是,当我向此主题发布消息时,Eventbridge 规则不会被触发。我试图看看其他人是否也遇到这个问题,但没有找到任何东西。我该如何解决这个问题?
我正在尝试学习如何使用 AWS Sagemaker,并且偶然发现输入数据的设置为清单文件或增强清单文件。通过 Sagemaker 控制台创建训练作业时,我在输入数据配置部分看到无法使用以下设置组合:
Input mode = File
S3 data type = AugmentedManifestFile
Run Code Online (Sandbox Code Playgroud)
因为这会导致错误Pipe mode is required for AugmentedManifestFile S3 data type.。
在“输入数据配置”部分中,我还可以为 AgumentedManifestFile 选择属性名称,而对于 ManifestFile 选项则不能。这是因为所有清单文件必须遵循相同的模板,而增强清单文件允许您决定模板吗?
此外,我在本教程中还看到,清单文件可以用于增量训练,但不能使用增强清单文件。我试图将这些碎片拼凑在一起,但我似乎并没有完全了解它们的差异。
我有以下使用 .NET 7 的静态抽象成员功能的实现:
public interface IFoo
{
public static abstract string Bar { get; }
}
public class Foo : IFoo
{
public static string Bar => "Bar"
}
Run Code Online (Sandbox Code Playgroud)
现在,每当我使用接口作为泛型类的类型参数时,我都会收到错误。例如,如果我的 Program.cs 如下所示:
List<IFoo> fooList = new List<Foo>();
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
错误CS8920:接口“IFoo”不能用作类型参数。静态成员“IFoo.Bar”在接口中没有最具体的实现。
我猜想,无论出于什么原因,这是 C# 的限制。不过,我可能是错的,所以现在我问:有没有办法解决这个问题,或者至少绕过这个限制?