在.Net中,调用Type.GetCustomAttributes(true)方法时返回的接口上没有声明属性的原因是因为接口本身不支持属性的声明。
接口是一种抽象的类型,用于定义一组方法、属性、事件和索引器的集合,但接口本身并不包含实现。在接口中,只能声明方法、事件、索引器和自动属性,而不能声明具有实际实现的属性。
当调用Type.GetCustomAttributes(true)方法时,该方法会返回指定类型的所有自定义属性。自定义属性是一种用于为类型、成员或程序集添加元数据的特性。然而,由于接口本身不支持属性的声明,因此在接口上调用该方法时返回的结果中不会包含任何属性。
需要注意的是,虽然接口本身不支持属性的声明,但可以在实现接口的类中声明属性,并通过类的实例来访问这些属性。
总结起来,在.Net中调用Type.GetCustomAttributes(true)方法返回的接口上没有声明属性,是因为接口本身不支持属性的声明。
领取专属 10元无门槛券
手把手带您无忧上云