检查我的对象是否在C#中实现了通用接口
本文关键字:实现 接口 我的 对象 是否 检查 | 更新日期: 2023-09-27 17:57:31
我有一个接口:
public interface IEntityWithTypedId<T>{}
并且有两个类:
public abstract class EntityWithTypedId<TId> : IEntityWithTypedId<TId>{...}
public abstract class Entity : EntityWithTypedId<int>{...}
所以我有这样的实体:
public class TestA : Entity
public class TestB : EntityWithTypedId<string>
public class TestC : EntityWithTypedId<byte>
如何检查我的实体是否实现了IEntityWithTypedId?
感谢
typeof(TestA).GetInterfaces()
.Any(i => i.GetGenericTypeDefinition() == typeof(IEntityWithTypedId<>))