我这里有问题。(C#)
另一个程序集中有一个集合(我无法更改它),它接受一个字符串作为参数并返回一个对象。
喜欢:
object Value = ThatCollection.GetValue("ParameterName");
问题是,对于每个参数字符串,它返回一个不同的类型作为对象。我想要的是将这些对象转换为它们各自的类型,仅在运行时通过它们的字符串名称知道类型。
我需要对这些返回值进行一些操作。为此,我需要正确地投射它们以访问它们的成员等。
限制:
- 我不能使用“动态”,因为我的代码需要在较旧的框架中完成:3.5(因为互操作问题)。
- 我需要对许多不同类型的返回值进行操作(当然,除了“对象”之外,没有通用接口或基类)
- 我所拥有的只是一个将参数名称与其返回类型相关联的表(包含字符串值)。
- 是的,我可以将该表转换为 biiig “switch” 语句,不是很好,不希望那样。
有什么提示吗??