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).

Respuestas a la pregunta(1)

Su respuesta a la pregunta