C# 类,该类根据上下文从两个不同的源返回相同类型的对象

C# 类,该类根据上下文从两个不同的源返回相同类型的对象,c#,design-patterns,C#,Design Patterns,我有两个数据库,根据上下文的不同,我需要从其中任何一个数据库检索(相同类型的)记录。我应该如何设计从数据库检索对象的类,有没有比将数据库ceonnection字符串作为构造函数传递给类更好的方法呢?如果整个实现中唯一的区别是连接字符串,我会坚持使用它,而不需要使事情复杂化。如果整个实现中唯一的区别是连接字符串,我会坚持使用它,而不需要使事情复杂化。如果两个DBs使用相同的驱动程序,我看不出您的操作有任何问题。尽管事实上,我认为我应该在数据访问类中将两个连接字符串作为常量保留,然后向该类传递一个键

我有两个数据库,根据上下文的不同,我需要从其中任何一个数据库检索(相同类型的)记录。我应该如何设计从数据库检索对象的类,有没有比将数据库ceonnection字符串作为构造函数传递给类更好的方法呢?

如果整个实现中唯一的区别是连接字符串,我会坚持使用它,而不需要使事情复杂化。

如果整个实现中唯一的区别是连接字符串,我会坚持使用它,而不需要使事情复杂化。

如果两个DBs使用相同的驱动程序,我看不出您的操作有任何问题。尽管事实上,我认为我应该在数据访问类中将两个连接字符串作为常量保留,然后向该类传递一个键,告诉它使用哪一个。依赖注入,虽然是一个非常酷和有用的工具,但对于这一个,它将是用火箭筒杀死一只苍蝇。

如果两个DBs使用相同的驱动程序,我看不出您所做的有任何问题。尽管事实上,我认为我应该在数据访问类中将两个连接字符串作为常量保留,然后向该类传递一个键,告诉它使用哪一个。依赖注入,虽然是一个非常酷和有用的工具,但对于这个工具来说,就是用火箭筒杀死苍蝇。

您是否使用任何类型的ORM或DB适配器与DB或直接存储过程交互?您需要研究IoC(控制反转)/DI(依赖注入)框架,如StructureMap或Unity,插入相应的连接字符串或数据上下文。区分轮询哪个数据库的上下文是什么?@PhillipSchmidt-使用简单的SqlDataReader,否ORM@FreshCode-我实际同步生成两个数据库中记录之间的差异列表,我在DB a中读取记录,然后在DB B中读取记录,我逐一比较了它们,您是否使用任何类型的ORM或DB适配器与DB交互,或直接存储过程?您需要研究IoC(控制反转)/DI(依赖注入)框架,例如StructureMap或Unity,以注入相应的连接字符串或数据上下文。区分轮询哪个数据库的上下文是什么?@PhillipSchmidt-使用简单的SqlDataReader,否ORM@FreshCode-我实际同步生成两个数据库中记录之间的差异列表,我在DB a中读取记录,然后在DB B中读取记录,并逐一比较它们