Cambiar el mapa de entidad a otra tabla "desconocida" en tiempo de ejecución
Tengo que escribir una aplicación C # que funcione con una base de datos del servidor SQL creada y mantenida por una aplicación antigua. La aplicación crea nuevas tablas cada año y la "propiedad del año" se encuentra en el nombre de la tabla. El número de tablas que crea puede variar según el número de "secciones" que el usuario haya creado dentro de la aplicación. Entonces, tengo que trabajar con tablas como Cwx_DRyz (bastante autoexplicativa ...), donde "wx" puede ser la sección, y "yz" sería el año. Un ejemplo de grupo de tabla podría ser:
C01_DR07
C01_DR08
C01_DR09
C02_DR08
C02_DR09
C03_DR06
C04_DR12
Y todas esas tablas podrían representar, por ejemplo, clientes. Serían clientes de diferentes secciones y años, pero clientes con la misma estructura.
Mi pregunta es: ¿Puedo tener una entidad cliente para manejar todas esas tablas y cambiar la asignación de una a otra en tiempo de ejecución? El título dice "desconocido" porque no conozco las tablas antes del tiempo de ejecución.
La pregunta más similar que he encontrado esEntity Framework asigna varias tablas a una entidad y la respuesta es usar la "Tabla por herencia de tipo concreto", pero no es útil para mi caso.
PS: EF versión 4.3.1 y VS2010
EDITAR: Las tablas no tienen claves primarias ... La mayoría de ellas tienen columnas que se supone que tienen valores únicos (entero o cadena).