定义委托时,对非泛型声明不允许约束

时间:2018-08-05 04:22:50

标签: asp.net entity-framework delegates

我要定义delegate如下:

public delegate void DataRequestingEventHandler(object sender, 
CommandEventArgs e) where Entity : IEntityId<EntityKey>, new() where 
EntityKey : IEntityKey, new();

但是我收到此错误:

  

非泛型声明中不允许使用约束

有什么想法吗?

谢谢

1 个答案:

答案 0 :(得分:1)

这是因为非泛型声明中不允许使用约束。因此,您需要在声明中添加Generic Type Parameters才能使其成为通用声明。

看起来您希望syntax = "proto3"; message ProtoUser { string userName = 1; int32 userId = 2; } Entity是泛型类型参数,但未能声明它们。同样按照惯例,通用类型参数以EntityKey开头,例如:

T