【发布时间】:2014-08-13 01:34:45
【问题描述】:
我有如下通用方法,我想将 T 限制为仅是 Guid 类型,如下所示:
public static EntityFindApiResponse EntityFind<T>(
Credential cred, EntitiesApiClient entitiesApiClient, string clrType,
string propertyName, T searchKey)
where T: Guid
{
// ...
}
编译器告诉我
'System.Guid' 不是有效的约束。用作约束的类型必须是接口、非密封类或类型参数。
那么,为什么这不起作用?
【问题讨论】:
-
看来你可以去掉 type 参数,让 EntityFindApiResponse 的最后一个参数为 Guid 类型;你试过这个吗?
标签: c# generics types constraints