Modifica - pulizia domanda per riflettere meglio il problema effettivo:SQLMetal più chiavi esterne che indicano un Tavolo Problema
sto usando SQLMetal per generare classi di database del nostro db SQL Server. Di recente, ho avuto bisogno di aggiungere una tabella con più chiavi esterne che puntavano alla stessa tabella. Utilizzando LINQPad di giocare con le nuove tabelle, sono stato in grado di accedere alle proprietà per entrambe le chiavi esterne in questo modo:
- record.FK_AId
- record.FK_BId
- record.FKA
- record.FKB
... che è proprio come me lo aspetterei. Il problema è che le classi generate da SQLMetal producono queste proprietà:
- record.FK_AId
- record.FK_BId
- record.FKA
- record.FKBTableNameGoesHere
Ora ho potuto basta semplicemente fondere le classi generate in modo che FKBTableNameGoesHere sia FK_B, ma i file generati vengono cambiati molto spesso dai diversi membri del team, quindi sarebbe un enorme pai n. C'è una soluzione facile per questo?
Grazie in anticipo.
Edit 2 Così, ho pensato che la soluzione sarebbe quella di creare solo una classe parziale che aveva una proprietà denominata quello che volevo che fosse, e lasciare che il punto di getter/setter per la proprietà infelicemente chiamato. Questo ha funzionato per selezionare, ma non per utilizzarlo in clausole e simili. CHIUNQUE ha una soluzione ??
Questo può essere effettivamente fatto un passo avanti e l'uso di _OriginalPoorlyNamedStorageVariable può essere omesso interamente. Tuttavia non sono sicuro che se non includi la tua variabile di memoria nel costruttore non causerà altre complicazioni, ma probabilmente lo scoprirò molto presto ... – jahu