0
比方说,我有最简单的接口,在我的程序的所有组件。强制属性加成用于实现接口的所有类
public interface IComponent
{
}
我知道,每一个部件被写入该项目已实现此接口,并且我知道,所有这些组件将使用的BinaryFormatter
C#保存到磁盘上。这意味着每个组件都必须用[Serializable]
属性进行装饰。现在有没有办法强制添加此属性?
我说“现在”因为我发现,告诉我,这是不可能的各种做题 - 但所有我能找到的问题是从2008年开始自那时以来已在C#规范什么变化吗?还是必须使用旧答案中描述的解决方法之一?
最老的C#的问题,我可以找到关于Stack Overflow是从2008年7月,你是怎么找到那些从2008年_before_回答你的问题? C#规范中的许多内容已经发生了变化,但没有任何内容会改变编译时使用属性的方式(即,它们大多不是......只有少数例外,这是编译器特有的)。您应该将您的问题关闭为您找到的现有答案的一个副本,或者将其完全删除。 –
的“或更早版本”部分是误导,因为SO是在2008年开始,如果您的评论是确实的答案,我会关闭的问题:什么事都没有变化,有没有办法执行属性装饰。但我认为要慎重,因为自从C#3.0和6.0以来,很多事情都发生了变化。 – Drakestar