Điều này tương tự như các câu hỏi here và here, nhưng chúng cũ và không có câu trả lời hay.Mã khung thực thể đầu tiên: Cách bỏ qua các lớp
Hãy nói rằng tôi có các lớp sau:
class HairCutStyle {
public int ID { get; set; }
public string Name { get; set; }
}
class CustomerHairCutPreference {
public int ID { get; set; }
public Customer Customer { get; set; }
public HairCutStyle HairCutStyle { get; set; }
}
Hãy nói rằng dữ liệu HairCutStyle của tôi được lưu trữ trong một bảng trong một cơ sở dữ liệu (tôi nhận được nó từ Paul Mitchell mình). Tôi muốn sử dụng lớp HairCutStyle như một lớp POCO - một thứ mà tôi sẽ sử dụng trong mã để biểu diễn các kiểu cắt tóc, nhưng tôi không cần đọc/ghi thông tin đó trong cơ sở dữ liệu của mình. (Giả sử tôi có một lớp dịch vụ riêng biệt có thể điền dữ liệu cho các lớp này từ cơ sở dữ liệu khác.)
Làm cách nào để nói EF KHÔNG tạo bảng HairCutStyle trong ngữ cảnh db hiện tại của tôi? Nhưng đồng thời, tôi muốn lưu trữ một giá trị trong bảng CustomerHairCutPreference, đó là tham chiếu đến dữ liệu HairCutStyle được lưu trữ ở nơi khác. Một khoá ngoại ảo "ảo", không bị ràng buộc bởi ràng buộc FK cơ sở dữ liệu thực tế.
Bạn đã thử thêm nó vào lớp DbContext chưa? Điều đó có nghĩa là EF không có kiến thức về tệp. – krillgar
Có thể trùng lặp. http://stackoverflow.com/questions/7642205/how-to-configure-ef-code-first-to-not-map-a-specific-type –