【发布时间】:2010-01-20 04:43:16
【问题描述】:
我在解析器中有一个工厂方法。本质上,当我加载一个令牌时,我会查找该令牌的处理程序,或者直接转到默认处理程序。我已将其实现为switch 和Dictionary<string,Type>,但这两种方法都要求我将映射存储在处理程序类之外的其他位置。
我们正在为 IOC 使用 Ninject,所以我意识到我也可以使用它来做到这一点
kernel.Get<ITokenHandler>(tokenName);
但这并不能节省我存储处理程序可以在 2 个位置处理什么令牌的信息。有没有办法可以装饰处理程序以便自动映射?
【问题讨论】:
标签: c# inversion-of-control ninject factory-pattern