【发布时间】:2016-01-29 13:57:22
【问题描述】:
我正在使用一些遗留的 ASP.NET MVC 代码,其中包含许多相当详细的 XML 配置文件。每个文件在运行时被加载到定义为 Singleton 类的对象表示中。
我不想通过类类型专门引用每个单例,我想要一种以编程方式获取它们中的每一个,然后能够基于它们都必须实现的接口访问它们共同的属性和方法的方法。
例如,这些单例都有一个名为“Filename”的字符串实例属性,即它们所代表的配置文件的名称。因此,我想自动生成这些文件名的列表,而无需手动引用每个单例来获取属性,因此我需要以编程方式获取所有实现指定 Filename 属性的接口的单例实例,然后通过以下方式获取该属性值投射到那个界面。
这可能吗?
【问题讨论】:
-
你能提供你的单例类的布局吗?
-
它们很重,会占用太多空间来完整发布,但本质上它们只是典型的单例实现,每个都有自己的特定类类型,而不是从任何东西继承,而是实现一个通用接口,只公开少数公共实例属性和方法。
标签: c# .net reflection singleton