C#的devise模式,并基于string参数调用不同的方法

所以我现在要开发一个相当酷的库,在这个库中,我将从Excel工作表或Sharepoint列表中提取数据,然后使用WatiN和.NET和C#来执行各种浏览器命令以进行自动UItesting。 然而,我正在尝试封装未来的命令或testing可能需要生成的不断变化的需求的大devise问题。 目前,我基于一个命令参数(在Excel或Sharepoint列表中存储为string)需要执行大约5个独特的操作,但是我想要轻松地使命令的数量可扩展以及执行validation以确保没有不好的命令。 任何人都可以指出我devise模式的正确方向,这可能会帮助我有效而强大地实现这一点,而不仅仅是在HandleCommand()函数中写入一个巨大的开关语句。 感谢您帮助新的程序员! = d

Solutions Collecting From Web of "C#的devise模式,并基于string参数调用不同的方法"

查看命令模式来封装命令,并使用工厂模式根据其名称创建命令对象的实例。 工厂可以使用反射来确定基于文本创建哪个命令。

我同意Builder和Factory Method在这里有意义。 您可能不想使用Gamma和“设计模式”手册中描述的Factory Method的基于继承的版本。 只需使用一个静态工厂方法,该方法需要Command类的名称来实例化。