我有一个具有许多属性的类,其中一个是对象,我们称它为 ExtraData。这可以是三种不同类型中的任何一种的对象,这三种类型之间没有共享字段。
我应该创建一个所有三个对象类都实现的标记接口并使 ExtraData 属性属于该接口类型吗?我读过的所有内容都说要在 .NET 中避免这种情况,并尽可能使用自定义属性。如果我这样做,我会让 ExtraData 成为一个简单的对象并检查属性以确定它的类型吗?如果我想使用这些数据、检查属性并相应地进行转换,这似乎需要做很多额外的工作。
这是“不使用标记接口”规则的例外吗?还是我错过了一些明显的东西?
谢谢。