9

Khi cơ sở dữ liệu của tôi được thiết kế sử dụng tên bảng và cột Đức, tính năng đa nguyên mặc định của khung thực thể không hoạt động đối với tôi.Làm thế nào để tùy chỉnh đa số cho Entity Framework 5

Tôi đã tìm thấy một vài tài nguyên mà điều này được thảo luận, nhưng không có tài liệu nào trong số đó có vẻ hoạt động.

gì tôi đã tìm thấy: Có là PluralisationService nơi mà tôi có thể thêm các ánh xạ:

PluralizationService pluralizer = 
     PluralizationService.CreateService(CultureInfo.GetCultureInfo("en-us")); 
ICustomPluralizationMapping mapping = ps as ICustomPluralizationMapping; 
mapping.AddWord("Tabelle", "Tabellen"); 

Nhưng những gì tiếp theo? Tôi đã cố gắng:

EntityModelSchemaGenerator generator = new EntityModelSchemaGenerator(container); 
generator.PluralizationService = pluralizer; 
generator.GenerateMetadata(); 

và đặt cả hai trong mẫu POCO T4 của tôi. Nhưng nó đã ném ngoại lệ sau:

EntityContainer 'ContainerName' không phải là một cửa hàng EntityContainer. Tên tham số: storeEntityContainer
tại System.Data.Entity.Design.EntityModelSchemaGenerator.Initialize (...)
tại Microsoft.VisualStudio.TextTemplating ... GeneratedTextTransformation.TransformText()
+0

+1 để điều tra trong câu hỏi. Đây là cách đặt câu hỏi. Đấu tranh với vấn đề này bản thân mình mà không có nhiều thành công. – Judo

Trả lời

0

Tôi cũng đang tìm cho cùng một điều. Có thể this có thể hữu ích. Tôi chỉ không sẵn sàng trả tiền cho một tính năng cơ bản như vậy.

EDIT:

Mã bạn đăng là để được sử dụng với EdmGen2 mà sẽ cung cấp cho bạn CSDL, SSDL hoặc các tập tin MSL số nhiều theo lớp học của bạn.

0

Để tùy chỉnh hoàn toàn các tên bảng trong EF Mã Trước tiên, bạn có thể sử dụng thuộc tính Table để xác định một cách rõ ràng tên của bảng kết hợp với một lớp:

[Table("InternalBlogs")] 
public class Blog 
{ 
    //... 
} 
0

Một câu hỏi rất cũ, nhưng nếu ai đó là vẫn đang tìm kiếm quy trình/giải pháp có thể có:

Tôi đã gặp sự cố tương tự nơi tôi muốn tùy chỉnh nhập giản đồ (CSDL) từ cơ sở dữ liệu. Các giải pháp/quy trình làm việc là như sau:

  1. triển khai cấu trúc CSDL (tôi đã sử dụng Visual Studio Database Project VS 201x) vào một cơ sở dữ liệu địa phương
  2. nhập khẩu các mô hình cơ sở dữ liệu sử dụng EDMGEN để tạo ra các CSDL, SSDL và MSDL file http://msdn.microsoft.com/en-us/library/vstudio/bb387165(v=vs.110).aspx
  3. Modified EDMGEN2 với những thay đổi của tôi về cách xử lý pluralization và đặt tên với các quy tắc tùy chỉnh và tạo tập tin EDMX
  4. Ran mẫu T4 (với tùy biến thêm khi cần thiết) để tạo đầu ra.
Các vấn đề liên quan