Editar - Limpieza de pregunta para reflejar mejor el problema real:SQLMetal claves externas múltiples señalando una tabla Edición
estoy usando SQLMetal para generar clases de bases de datos de nuestro db SQL Server. Recientemente, necesité agregar una tabla que tenía varias claves foráneas apuntando a la misma tabla. Usando LINQPad a jugar con las nuevas tablas, yo era capaz de acceder a las propiedades de ambas claves externas de este modo:
- record.FK_AId
- record.FK_BId
- record.FKA
- record.FKB
... que es lo que se puede esperar la misma. El problema es que las clases generadas por SQLMetal producen estas propiedades:
- record.FK_AId
- record.FK_BId
- record.FKA
- record.FKBTableNameGoesHere
Ahora podía simplemente cange las clases generadas por lo que FKBTableNameGoesHere sería FK_B, pero los archivos generados son cambiados muy a menudo por diferentes miembros del equipo, por lo que sería un gran pai norte. ¿Hay alguna manera sencilla de reparar esto?
Gracias de antemano.
Editar 2 Por lo tanto, pensé que la solución sería simplemente crear una clase parcial que tenía una propiedad denominada lo que yo quería que fuera, y dejar que el punto de captador/definidor de la propiedad mal llamada. Eso funcionó para seleccionar, pero no usarlo en cláusulas where y tal. ¿¿Alguien tiene una solución??
Esto se puede dar un paso más y se puede omitir por completo _OriginalPoorlyNamedStorageVariable. Sin embargo, no estoy seguro si no incluir su propia variable de almacenamiento en el constructor no causará otras complicaciones, pero probablemente lo descubra muy pronto ... – jahu