2011-10-10 34 views
10

Tôi đang sử dụng CodeFirst của EF với cơ sở dữ liệu được xác định rõ. Cơ sở dữ liệu của tôi có một bảng có tên 'Centros' (từ tiếng Bồ Đào Nha) và tôi cố gắng tìm ra rằng EF cố gắng đa dạng hóa các thực thể của tôi để có được một phù thủy 'Centroes' sai trong trường hợp này.Bảng khuôn khổ thực thể CodeFirst bảng số nhiều

Nếu tôi xóa số nhiều modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); tôi quản lý để làm cho nó hoạt động NHƯNG, tôi phải đổi tên bảng thành 'Centro' (để khớp tên tổ chức của tôi).

Trong tiếng Bồ Đào Nha 'Centro' là số ít, 'Centros' là số nhiều.

Tôi không muốn đổi tên tên bảng vì vậy làm cách nào tôi có thể chỉ định tên bảng phù hợp cho pháp nhân của mình sau khi xóa quy ước đa nguyên?

Trả lời

22

Tôi chú thích tất cả các lớp của mình, bất kể khung làm việc có thể làm điều đó cho tôi thông qua một số thói quen phản ánh thông minh hay không. Ví dụ.

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

} 

Chúng tôi có thể chạm vào loại, sạch hơn và ít có khả năng rơi vào một số sự kiện không mong muốn.

+1

Đây là câu trả lời hay hơn http://stackoverflow.com/questions/4796543/how-do-i-singularize-my-tables-in-ef-code-first – om471987

-1

ModelBuilder hiện là System.Data.Entity.DbModelBuilder.

2

Hoặc bạn có thể làm cùng một lúc như thế này trong API thạo:

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

Các vấn đề liên quan