2011-10-10 15 views
10

Uso CodeFirst di EF con un database ben definito. Il mio database ha una tabella chiamata 'Centros' (parola portoghese) e riesco a trovare che EF cerchi di pluralizzare le mie entità per ottenere che in questo caso una strega 'Centroes' sia sbagliata.Codice quadro entità Prima tabella pluralizzazione

Se rimuovo la pluralizzazione modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); riesco a farlo funzionare MA DEVO rinominare la mia tabella in "Centro" (in modo che corrisponda al nome della mia entità).

In portoghese "Centro" è singolare, "Centros" è plurale.

Non voglio rinominare i nomi delle tabelle, quindi come posso specificare il nome della tabella corrispondente per la mia entità dopo aver rimosso la convenzione di pluralizzazione?

risposta

22

Annoto tutte le mie classi, indipendentemente dal fatto che il framework possa farlo per me attraverso alcune routine di riflessione intelligenti. Per esempio.

[Table("Order")] 
public class Order 
{ 

} 

Possiamo toccare il tipo, è più pulito ed è meno probabile che ricada in un evento inaspettato.

+1

Questa è la risposta migliore http://stackoverflow.com/questions/4796543/how-do-i-singularize-my-tables-in-ef-code-first – om471987

-1

ModelBuilder è ora System.Data.Entity.DbModelBuilder.

2

Oppure si può fare uno alla volta come questo in API Fluent:

modelBuilder.Entity() ToTable ("ContactInfo");.

Problemi correlati