不能对 ContainsGenericParameters 为 true 的类型或方法执行后期绑定操作
本文关键字:执行 方法 操作 绑定 类型 ContainsGenericParameters true 不能 | 更新日期: 2023-09-27 18:33:32
我有一个适用于所有实体的扩展:
public static class EntityBaseExtensions
{
public static T Clone<T>(this T item)
where T : EntityBase
{
return item.EntityClone<T>();
}
}
和
public virtual T EntityClone<T>() where T : EntityBase
{
return this.MemberwiseClone() as T;
}
但是当我这样称呼它时:
var details = user.Details.Clone();
我得到
不能对 的类型或方法执行后期绑定操作 包含通用参数为真。
有什么想法吗?
解决方案有点奇怪:
public static T Clone<T>(this T item)
where T : SimpleEntityBase
{
return (T)item.EntityClone();
}
和
public virtual object EntityClone()
{
return this.MemberwiseClone();
}